驗證器
概述
ThinkPHP5.0驗證使用獨立的\think\Validate類或者驗證器進行驗證家乘。
獨立驗證
任何時候,都可以使用Validate類進行獨立的驗證操作泵督,例如:
$validate = new Validate([
? ? 'name'? => 'require|max:25',
? ? 'email' => 'email'
]);
$data = [
? ? 'name'? => 'thinkphp',
? ? 'email' => 'thinkphp@qq.com'
];
if (!$validate->check($data)) {
? ? dump($validate->getError());
}
驗證器
這是5.0推薦的驗證方式,為具體的驗證場景或者數(shù)據(jù)表定義好驗證器類,直接調(diào)用驗證類的check方法即可完成驗證没陡,下面是一個例子:
我們定義一個\app\index\validate\User驗證器類用于User的驗證。
namespace app\index\validate;
use think\Validate;
class User extends Validate
{
? ? protected $rule = [
? ? ? ? 'name'? =>? 'require|max:25',
? ? ? ? 'email' =>? 'email',
? ? ];
}
在需要進行User驗證的地方索赏,添加如下代碼即可:
$data = [
? ? 'name'=>'thinkphp',
? ? 'email'=>'thinkphp@qq.com'
];
$validate = Loader::validate('User');
if(!$validate->check($data)){
? ? dump($validate->getError());
}
使用助手函數(shù)實例化驗證器
$validate = validate('User');