简单而强大的数据验证工具

1.4.1 2017-07-24 22:53 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:25:36 UTC


README

简单而强大的数据验证工具。

License Build Status SensioLabsInsight

为什么

想象我给你以下数据

$data = [
	'key1' => 123,
	'key2' => 'abc',
	'key3' => true
];

然后我要求你根据以下约束进行验证

  • 它必须是一个数组。
  • key1 必须包含一个介于 100200 之间的整数。
  • key2 必须包含一个非空字符串。
  • key3 必须包含布尔值或可调用对象。
  • 如果设置了 key4,它必须是一个最多包含 3 个项目的数组。
  • 不能有其他键。

你的代码验证 $data 要花多长时间?

使用本项目,可以使用以下代码进行验证

can($data)->claim(To::beArray()
    ->withKey('key1')->expected(To::beInteger()->withMin(100)->withMax(200))
    ->withKey('key2')->expected(To::beString()->withMinLength(1))
    ->withKey('key3')->expected(To::beOneOf(To::beBoolean(), To::beCallable()))
    ->withKey('key4')->expected(To::beOptionalAnd(To::beArray()->withMaxCount(3)))
    ->withNoOtherKeys()
);

安装

打开命令行,进入你的项目目录并执行以下命令以下载此项目的最新稳定版本

$ composer require carlosv2/can

此命令要求你已全局安装 Composer,如 Composer 文档中的 安装章节 所述。

文档

可用文档