Eyoucms程序开发:控制器验证
如果你需要在控制器中进行验证,并且继承了\think\Controller
的话,可以调用控制器类提供的validate
方法进行验证,如下:
$result = $this->validate(
[
'name' => 'thinkphp',
'email' => 'thinkphp@qq.com',
],
[
'name' => 'require|max:25',
'email' => 'email',
]);
if(true !== $result){
// 验证失败 输出错误信息
dump($result);
}
如果定义了验证器类的话,例如:
namespace app\index\validate;
use think\Validate;
class User extends Validate
{
protected $rule = [
'name' => 'require|max:25',
'email' => 'email',
];
protected $message = [
'name.require' => '用户名必须',
'email' => '邮箱格式错误',
];
protected $scene = [
'add' => ['name','email'],
'edit' => ['email'],
];
}
控制器中的验证代码可以简化为:
$result = $this->validate($data,'User');
if(true !== $result){
// 验证失败 输出错误信息
dump($result);
}
如果要使用场景,可以使用:
$result = $this->validate($data,'User.edit');
if(true !== $result){
// 验证失败 输出错误信息
dump($result);
}
在validate方法中还支持做一些前置的操作回调,使用方式如下:
$result = $this->validate($data,'User.edit',[],[$this,'some']);
if(true !== $result){
// 验证失败 输出错误信息
dump($result);
}
免责声明:1.凡本站注明“来源:XXX(非老K模板网)”的作品,均转载自其它媒体,所载的文章、图片、音频视频文件等资料的版权归版权所有人所有,如有侵权,请联系laokcms#126.com处理;2.凡本站转载内容仅代表作者本人观点,与老K模板网无关。
相关文档
- 为WordPress添加Google reCAPTCHA进行人机...
- 迅睿CMS:前端无法进行拖动排序
- 留言模型如何使用手机短信验证码
- arclist循环中,判断如果是第一个li,则添加固定的css,...
- 留言模型验证码调用
- 易优cms二次验证密码忘记解决办法
- 宝塔环境教你去掉URL中index.php的方法
- 百度云空间教你去掉URL中index.php的方法
- 如何在微信公众号/微信小程序中嵌入易优小程序
- 迅睿CMS:用户中心模块控制器继承重写
- 迅睿CMS:重写系统Library类:邮件验证函数
- 迅睿CMS:如何利用模块内容进行文件下载功能
- 迅睿CMS:自定义付款:支付前的验证写法
- 迅睿CMS:单独对模块内容字段进行存储
- 迅睿CMS:让网站的前端控制器禁止访问
- 迅睿CMS:对注册时密码强度验证
- 迅睿CMS:前端用户登录时对密码进行加密传输
- 迅睿CMS:后台登录之前
- 迅睿CMS:定义控制器
- Eyoucms程序开发:定义标签
上一篇: Eyoucms程序开发:验证场景
下一篇: Eyoucms程序开发:模型验证
0 条评论