thinkphp5.0自定义验证规则使用方法
更新时间:2017年11月16日 12:02:05 投稿:laozhang
本文主要讲了thinkphp5.0版本中自定义验证规则的使用方法和一些注意事项。
我们在用thinkphp5.0时候,经常要自定义验证规则,这个写法与tp以前的版本有所区别,小编今天带来大家一起来学习一下5.0下验证规则的使用方法。
在thinkphp5中定义$rule(验证规则)有两种方式
方式一:
$rule = [ // 不可以在此处定义空的验证 如 'name' => '',会导致出现result未定义错误 'name' => 'require|max:25', 'age' => 'number|between:1,120', ];
方式二:
$rule = [ 'name' => ['require','max'=>25], 'age' => ['number','between'=>'1,120'], ];
如果方式一自定义验证规则的话,就可以这样写
$rule = [ 'name' => 'require|max:25|checkName:', 'age' => 'number|between:1,120', ]; protected function checkNmae($value) { $value 是name值,可以在此处进行验证,如正则验证 }
如果是方式二的话,写法如下
$rule = [ 'name' => ['require','max'=>25,'checkName'=>'$rule参数'], 'age' => ['number','between'=>'1,120'], 'email' => ['require', 'checkUserEmail'=>'qq.com'], ]; protected function checkName($value, $rule) { $vaule 是name值,$rule为上面的$rule参数 } protected function checkUserEmail($value,$rule) { $res = preg_match('/^\w+([-+.]\w+)*@'.$rule.'$/', $value); if (!$res) { return '邮箱只能是'.$rule.'域名'; } else { return true; } }
以上就是我们给出的两种方法的代码,如果你有更好的方法或者代码可以在下面的留言区讨论留言。
您可能感兴趣的文章:
相关文章
PHP中mysqli_affected_rows作用行数返回值分析
这篇文章主要介绍了PHP中mysqli_affected_rows作用行数返回值,实例分析了普通模式与oop模式的用法,具有一定的参考借鉴价值,需要的朋友可以参考下2014-12-12php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
刚做的一个项目中的部分代码,包含了php中随机数的产生、页面跳转、件读写、文件重命名、switch语句。2009-08-08JoshChen_web格式编码UTF8-无BOM的小细节分析
下面这张图是用chrome浏览器打开一个2012年-2013学年第二学期的PHP课程的期末作业,用的是PHP + smarty + mysql来实现的2013-08-08PHP基于session.upload_progress 实现文件上传进度显示功能详解
这篇文章主要介绍了PHP基于session.upload_progress 实现文件上传进度显示功能,结合实例形式分析了php5.4版本session.upload_progress特性实现文件上传进度显示的相关操作技巧,需要的朋友可以参考下2019-08-08
最新评论