频道栏目
首页 > 资讯 > ThinkPHP > 正文

ThinkPHP 自动验证之动态改变验证规则

16-01-07        来源:[db:作者]  
收藏   我要投稿
动态验证 setProperty
方法
通常来说,每个数据表对应的验证规则是相对固定的,但是在某些特殊的情况下面可能会改变验证规则。ThinkPHP 的 Model类 提供了
setProperty 方法,可以在操作中使用 setProperty 方法动态改变验证规则来满足不同条件下的验证:

setProperty
方法用于设置模型的属性值,语法如下:

setProperty(string name, mixed
value)

例子:
$Article = D("Article");
$validate = array(
array('title','require','标题不能为空!',1), // 仅需验证标题不能为空
);
$Article->setProperty("_validate",$validate);
if (!$Article->create()){
// 如果创建失败,表示验证没有通过(注:可能原因之一)输出错误提示信息
exit($Article->getError());
}else{
// 验证通过,继续下一步流程如将数据写入数据表

}

上面的例子在操作里动态改变了原有的验证规则,从而实现不同条件下的自动验证。

提示

在操作中动态改变验证规则后,新的规则将直接覆盖原有的验证规则。ThinkPHP
还没有支持动态改变规则时对原有规则的追加、增减或者替换等更加灵活的动态改变方式。
相关TAG标签
上一篇:php中批量修改文件后缀名的函数代码
下一篇:为什么$up只能到1,该如何解决
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站