kynetcode/wpzylos-validation 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

kynetcode/wpzylos-validation

Composer 安装命令:

composer require kynetcode/wpzylos-validation

包简介

Minimal validation with localized messages for WPZylos framework

README 文档

README

Data validation and form request layer for WordPress plugins. Provides a fluent Validator, abstract FormRequest with built-in sanitization, structured error handling via MessageBag, and extensibility through custom rules.

Namespace: WPZylos\Framework\Validation

Features

  • Validator - Validate data arrays against rules with pipe syntax or array syntax
  • 14 Built-in Rules - required, string, integer/int, numeric, boolean, array, email, url, min, max, in, regex, nullable
  • 12 Standalone Rule Classes - RequiredRule, EmailRule, UrlRule, NumericRule, AlphaRule, AlphaNumericRule, MinRule, MaxRule, BetweenRule, InRule, ConfirmedRule, RegexRule
  • FormRequest - Abstract class combining authorization, sanitization, and validation
  • 10 Sanitizer Types - text, textarea, html, email, url, int, absint, float, bool, slug, key
  • MessageBag - Structured error collection with per-field access
  • Custom Rules - Extend validation via RuleInterface
  • i18n Support - Optional Translator integration for localized messages
  • Custom Messages - Field-specific and rule-level message overrides

Requirements

Requirement Version
PHP 8.1+
WordPress 6.0+
wpzylos/http Required for FormRequest

Installation

composer require wpzylos/validation

Quick Start

Basic Validation

use WPZylos\Framework\Validation\Validator;

$validator = new Validator(
    data:  ['email' => 'invalid', 'name' => ''],
    rules: ['email' => 'required|email', 'name' => 'required|min:2'],
);

if ($validator->fails()) {
    $errors = $validator->errors();
    echo $errors->first('email');  // "The email field must be a valid email address."
    echo $errors->first('name');   // "The name field is required."
}

// Get validated data (throws ValidationException if invalid)
$data = $validator->validated();

FormRequest

use WPZylos\Framework\Validation\FormRequest;

class StorePostRequest extends FormRequest
{
    public function rules(): array
    {
        return [
            'title'   => 'required|string|min:3|max:200',
            'content' => 'required|string',
            'status'  => 'required|in:draft,published',
        ];
    }

    public function sanitize(): array
    {
        return [
            'title'   => 'text',
            'content' => 'html',
            'status'  => 'key',
        ];
    }
}

Documentation

  • Usage Guide - Comprehensive guide covering validation, rules, FormRequest, custom rules, and error handling.
  • API Reference - Full method-by-method reference for every class and interface.

Support the Project

License

MIT License. See LICENSE for details.

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 4
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-2.0-or-later
  • 更新时间: 2026-06-16