pbrus/validation-engine

dev-master 2019-05-22 16:07 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:01:36 UTC


README

Written in PHP License

这是一个简单的PHP面向对象验证引擎,仅供娱乐。如果您需要一个强大的PHP验证器,我推荐这个

安装

使用 Composer 安装此包

$ composer require pbrus/validation-engine=dev-master

然后进入 validation-engine/ 目录并运行 dump-autoload

$ cd vendor/pbrus/validation-engine/
$ composer dump-autoload

如果您不知道什么是 Composer,请参阅简化PHP安装

使用方法

定义一个验证器并设置其标签(在此例中为 usernameid

$validator = new ValidationEngine();

$validator->setLabels(array(
    'username',
    'id'
));

在下一步中为每个标签设置约束条件

$validator->setConstraints('username', array(
    new NotEmptyValidator(array(
        'notEmptyMessage' => 'Field username must be filled out'
    )),
    new LengthValidator(array(
        'minLength' => 3,
        'maxLength' => 25,
        'lengthMessage' => "Field username must contain 3-25 letters"
    ))
));

$validator->setConstraints('id', array(
    new NotEmptyValidator(array(
        'notEmptyMessage' => "You must type your ID"
    )),
    new LengthValidator(array(
        'minLength' => 10,
        'maxLength' => 10,
        'lengthMessage' => "Field ID must consist of 10 integers"
    ))
));

然后我们可以验证数据

if (!$validator->setFields(array(
    'username' => 'John',   // not validated: 'Jo'
    'id' => '9876543210'    // not validated: '123'
))
) {
    echo $validator->getErrorMessage();
}

如果您遇到任何问题,请参阅示例文件 index.php

以下定义了以下类示例

  • NotEmptyValidator
  • LengthValidator

请随意添加自己的类。

许可证

Validation-engineMIT许可证 下授权。