assegaiphp/validation

介绍AssegaiPHP验证包,这是确保您应用程序数据完整性和准确性的终极工具。使用此包,您可以轻松实现针对传入数据的验证规则,无论这些数据来自表单提交、API请求还是任何其他来源。该包包括

0.3.2 2023-02-11 11:53 UTC

This package is auto-updated.

Last update: 2024-09-30 01:50:32 UTC


README

Assegai Logo

一个用于构建高效和可扩展服务器端应用程序的渐进式PHP框架。

AssegaiPHP验证

欢迎使用AssegaiPHP验证包!此包旨在为您的AssegaiPHP项目提供简单易用的数据验证解决方案。

安装

要在项目中安装此包,请在项目根目录中运行以下命令

composer require assegaiphp/validation

基本用法

要使用此包,只需导入Assegai\Validation\Validator类并创建一个新实例。然后,您可以使用validate()方法来检查值或值数组是否符合指定的标准。

use Assegai\Validation\Validator;

$validator = new Validator();
$isValid = $validator->validate($value, 'required|email');

validate()方法的第二个参数是一个包含要应用的验证规则的字符串,这些规则由|字符分隔。在上面的示例中,应用了必填和电子邮件规则。

创建验证规则

use Assegai\Validation\Interfaces\IValidationRule;

class MyCustomValidationRule extends IValidationRule
{
  public function passes(mixed $value): bool
  {
    // validate the value
  }

  public function getErrorMessage(): string
  {
    return 'The value is invalid.';
  }
}

可用规则

此包包含一些内置验证规则,包括

  • alpha:值必须只包含字母字符
  • alnum:值必须只包含字母数字字符
  • between:n,m:值必须在n和m之间(包含n和m)
  • domain:值必须是有效的域名
  • email:值必须是有效的电子邮件地址
  • equalTo:n:值必须等于n
  • float:值必须是浮点数
  • inlist:l:值在特定的允许值列表中
  • integer:值必须是整数
  • maxLength:n:值长度不得超过n个字符
  • max:n:值不大于最大值n
  • minLength:n:值长度至少为n个字符
  • min:n:值至少为n
  • notEqualTo:n:值必须不等于n
  • notinlist:l:值不在特定的不允许值列表中
  • numeric:值必须是数字
  • regex:n:值必须匹配给定的正则表达式模式n
  • required:值必须存在
  • string:值必须是字符串
  • url:值必须是有效的URL

您还可以通过扩展Assegai\Validation\Rule类并实现validate()方法来自定义验证规则。

验证属性

错误处理

如果validate()方法返回false,您可以使用getErrors()方法获取错误信息数组。

if (!$isValid)
{
  $errors = $validator->getErrors();
  // handle errors
}

进一步阅读

有关如何使用此包的更多信息,请参阅完整的文档。感谢使用AssegaiPHP。