我們在用thinkphp5.0時候,經(jīng)常要自定義驗證規(guī)則,這個寫法與tp以前的版本有所區(qū)別,小編今天帶來大家一起來學習一下5.0下驗證規(guī)則的使用方法。
在thinkphp5中定義$rule(驗證規(guī)則)有兩種方式
方式一:
$rule = [
// 不可以在此處定義空的驗證 如 'name' => '',會導致出現(xiàn)result未定義錯誤
'name' => 'require|max:25',
'age' => 'number|between:1,120',
];
方式二:
$rule = [
'name' => ['require','max'=>25],
'age' => ['number','between'=>'1,120'],
];
如果方式一自定義驗證規(guī)則的話,就可以這樣寫
$rule = [
'name' => 'require|max:25|checkName:',
'age' => 'number|between:1,120',
];
protected function checkNmae($value)
{
$value 是name值,可以在此處進行驗證,如正則驗證
}
如果是方式二的話,寫法如下
$rule = [
'name' => ['require','max'=>25,'checkName'=>'$rule參數(shù)'],
'age' => ['number','between'=>'1,120'],
'email' => ['require', 'checkUserEmail'=>'qq.com'],
];
protected function checkName($value, $rule)
{
$vaule 是name值,$rule為上面的$rule參數(shù)
}
protected function checkUserEmail($value,$rule)
{
$res = preg_match('/^\w+([-+.]\w+)*@'.$rule.'$/', $value);
if (!$res) {
return '郵箱只能是'.$rule.'域名';
} else {
return true;
}
}
以上就是我們給出的兩種方法的代碼,如果你有更好的方法或者代碼可以在下面的留言區(qū)討論留言。
您可能感興趣的文章:- ThinkPHP5 驗證器的具體使用
- Thinkphp5 微信公眾號token驗證不成功的原因及解決方法
- tp5(thinkPHP5框架)captcha驗證碼配置及驗證操作示例
- 學習thinkphp5.0驗證類使用方法
- thinkPHP5框架自定義驗證器實現(xiàn)方法分析
- thinkphp5框架API token身份驗證功能示例
- thinkPHP5.0框架驗證碼調(diào)用及點擊圖片刷新簡單實現(xiàn)方法
- thinkphp5使用bootstrapvalidator進行異步驗證郵箱的示例
- ThinkPHP5.0框架驗證碼功能實現(xiàn)方法【基于第三方擴展包】
- Thinkphp5框架使用validate實現(xiàn)驗證功能的方法