Eyoucms程序开发:错误信息
验证规则的错误提示信息有三种方式可以定义,如下:
使用默认的错误提示信息
如果没有定义任何的验证提示信息,系统会显示默认的错误信息,例如:
$rule = [
'name' => 'require|max:25',
'age' => 'number|between:1,120',
'email' => 'email',
];
$data = [
'name' => 'thinkphp',
'age' => 121,
'email' => 'thinkphp@qq.com',
];
$validate = new Validate($rule);
$result = $validate->check($data);
if(!$result){
echo $validate->getError();
}
会输出 age只能在 1 - 120 之间
。
可以给age字段设置中文名,例如:
$rule = [
'name' => 'require|max:25',
'age|年龄' => 'number|between:1,120',
'email' => 'email',
];
$data = [
'name' => 'thinkphp',
'age' => 121,
'email' => 'thinkphp@qq.com',
];
$validate = new Validate($rule);
$result = $validate->check($data);
if(!$result){
echo $validate->getError();
}
会输出 年龄只能在 1 - 120 之间
。
验证规则和提示信息分开定义
如果要输出自定义的错误信息,有两种方式可以设置。下面的一种方式是验证规则和提示信息分开定义:
$rule = [
'name' => 'require|max:25',
'age' => 'number|between:1,120',
'email' => 'email',
];
$msg = [
'name.require' => '名称必须',
'name.max' => '名称最多不能超过25个字符',
'age.number' => '年龄必须是数字',
'age.between' => '年龄必须在1~120之间',
'email' => '邮箱格式错误',
];
$data = [
'name' => 'thinkphp',
'age' => 121,
'email' => 'thinkphp@qq.com',
];
$validate = new Validate($rule,$msg);
$result = $validate->check($data);
if(!$result){
echo $validate->getError();
}
会输出 年龄必须在1~120之间
。
验证规则和提示信息一起定义
可以支持验证规则和错误信息一起定义的方式,如下:
$rule = [
['name','require|max:25','名称必须|名称最多不能超过25个字符'],
['age','number|between:1,120','年龄必须是数字|年龄必须在1~120之间'],
['email','email','邮箱格式错误']
];
$data = [
'name' => 'thinkphp',
'age' => 121,
'email' => 'thinkphp@qq.com',
];
$validate = new Validate($rule);
$result = $validate->check($data);
if(!$result){
echo $validate->getError();
}
使用多语言
如果需要使用多语言验证信息,可以在定义验证信息的时候使用 {%语言变量} 替代 原来的验证错误信息,例如:
$rule = [
'name' => 'require|max:25',
'age' => 'number|between:1,120',
'email' => 'email',
];
$msg = [
'name.require' => '{%name_require}',
'name.max' => '{%name_max}',
'age.number' => '{%age_number}',
'age.between' => '{%age_between}',
'email' => '{%email_error}',
];
$data = [
'name' => 'thinkphp',
'age' => 121,
'email' => 'thinkphp@qq.com',
];
$validate = new Validate($rule,$msg);
$result = $validate->check($data);
if(!$result){
echo $validate->getError();
}
相关文档
- 网站开启强制HTTPS后,弹窗提示请使用http模式访问
- 迅睿cms网站URL伪静态规则设置教程
- WordPress提示Briefly unavailable f...
- 为WordPress添加Google reCAPTCHA进行人机...
- 如何隐藏WordPress主题或插件的更新提示
- 迅睿CMS:附件缩略图信息更新
- 迅睿CMS:生成静态提示:地址不规范
- EYOUCMS 当前位置导航的修改方法
- 列表分页样式的修改
- 定制的零件列表的标签调用方法
- 多语言或多城市开启则显示,否则隐藏的判断
- 自增标签循环+1的方法
- 在线留言单选框选择的判断问题
- 获取当前文档url地址的方法
- 留言模型如何使用手机短信验证码
- 在其它页面调用单页文章内容的方法
- EYOU 广告备注信息调用代码
- 文章列表下的描述判断无描述内容时显示自定义内容
- 搜索功能的调用代码
- 当前栏目如何只调用第一层级栏目
上一篇: Eyoucms程序开发:验证规则
下一篇: Eyoucms程序开发:验证场景