medusa / validation

常用用例的验证对象

0.9.2 2021-05-10 11:01 UTC

This package is auto-updated.

Last update: 2024-09-10 18:44:09 UTC


README

目标

这个库被创建用来提供一种面向对象的方式,用于简单标量值验证的通用接口。

示例

让我们看看如何使用这些验证的一些示例,首先我们将看看如何用它来验证一个值。

use Medusa\Validation\HashValidation;use Medusa\Validation\Result\ResultInterface;

$val = new HashValidation(32);  // validate for hashes with a length of 32
/** @var ResultInterface $res */
$res = $val->validate('asdf');

这样你就可以使用大部分提供的验证类。下一步,让我们看看如何以最简单的方式处理结果。

use Medusa\Validation\Result\ResultInterface;
/** @var ResultInterface $res */
if ($res->isValid()) {
    echo 'yeah - its a valid hash-32';
} else {
    echo 'oh no someethin went wrong...';
    echo $res->getReason();
}

如果您想从技术角度了解更多信息,您还可以查看ReturnCodes。

use Medusa\Validation\HashValidation;
use Medusa\Validation\Result\ResultInterface;
/** @var ResultInterface $res */
if ($res->isValid()) {
    echo 'fine again :)';
} else {
    // 'oh no - not again';
    if ($res->getReturnCode() === HashValidation::INVALID_CHARACTER_OUT_OF_BOUNDS) {
        // ok give advice what went wrong
    }
}