ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码


Posted in PHP onJune 23, 2014

在ThinkPHP3.1版本之前,如果需要设置自动验证或者自动完成,必须定义在模型中,或者通过setProperty方法动态设置属性来完成,但是这样做的缺点是不太方便动态改变和调整 。

ThinkPHP3.1版本在模型类中增加auto和validate两个连贯操作,用于动态设置自动完成和自动验证规则,现在可以在Action中使用,示例代码如下:

$validate = array(
 array(verify,require,验证码必须!), 
 array(name,,帐号名称已经存在!,0,unique,1), 
 );
$auto = array ( 
 array(password,md5,1,function) , 
 array(create_time,time,2,function), 
 );
M(User)->auto($auto)->validate($validate)->create();

其中$auto和$validate变量的规范和模型类的_auto和_validate属性的定义规则一致,而且还可以支持函数调用(由于PHP本身的限制,在类的属性定义中不能调用函数) 。

auto和validate方法必须在create方法之前被调用 。

通过这一改进,你完全可以通过M方法实例化模型类后使用动态设置完成自动验证和自动完成操作,不必再依赖D方法了 。

PHP 相关文章推荐
PHP学习笔记之二
Jan 17 PHP
解析PHP生成静态html文件的三种方法
Jun 18 PHP
解析phpstorm + xdebug 远程断点调试
Jun 20 PHP
教你如何用php实现LOL数据远程获取
Jun 10 PHP
ThinkPHP中自定义目录结构的设置方法
Aug 15 PHP
PHP程序员的技术成长规划
Mar 25 PHP
php+ajax登录跳转登录实现思路
Jul 31 PHP
php数组指针操作详解
Feb 14 PHP
php判断str字符串是否是xml格式数据的方法示例
Jul 26 PHP
PHP fclose函数用法总结
Feb 15 PHP
php实现session共享的实例方法
Sep 19 PHP
PHP实现简单注册登录系统
Dec 28 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
Jun 23 #PHP
ThinkPHP实现事务回滚示例代码
Jun 23 #PHP
Discuz批量替换帖子内容的方法(使用SQL更新数据库)
Jun 23 #PHP
PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
Jun 23 #PHP
ThinkPHP学习笔记(一)ThinkPHP部署
Jun 22 #PHP
ThinkPHP的URL重写问题
Jun 22 #PHP
分享一个php 的异常处理程序
Jun 22 #PHP
You might like
php实现首页链接查询 友情链接检查的代码
2010/01/05 PHP
php基础教程
2015/08/26 PHP
yii2中添加验证码的实现方法
2016/01/09 PHP
PHP实现获取url地址中顶级域名的方法示例
2019/06/05 PHP
用JavaScript脚本实现Web页面信息交互
2006/12/21 Javascript
判断页面是关闭还是刷新的js代码
2007/01/28 Javascript
javascript实现控制div颜色
2015/07/07 Javascript
jQuery 判断图片是否加载完成方法汇总
2015/08/10 Javascript
jQuery实现简单下拉导航效果
2015/09/07 Javascript
3种js实现string的substring方法
2015/11/09 Javascript
基于jQuery插件jqzoom实现的图片放大镜效果示例
2017/01/23 Javascript
解决vue项目报错webpackJsonp is not defined问题
2018/03/14 Javascript
node express使用HTML模板的方法示例
2019/08/22 Javascript
使用Python读写文本文件及编写简单的文本编辑器
2016/03/11 Python
Python找出list中最常出现元素的方法
2016/06/14 Python
python分析作业提交情况
2017/11/22 Python
python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决
2019/04/29 Python
python 字典有序并写入json文件过程解析
2019/09/30 Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
2020/04/07 Python
Jupyter Notebook 文件默认目录的查看以及更改步骤
2020/04/14 Python
Opencv 图片的OCR识别的实战示例
2021/03/02 Python
Html5 video标签视频的最佳实践
2020/02/26 HTML / CSS
英国虚拟主机服务商:eUKhost
2016/08/16 全球购物
指针和引用有什么区别
2013/01/13 面试题
毕业生应聘幼儿园的自荐信
2013/11/20 职场文书
家长学校实施方案
2014/03/15 职场文书
热门专业求职信
2014/05/24 职场文书
门卫岗位职责说明书
2014/08/18 职场文书
个人委托书范本汇总
2014/10/01 职场文书
用人单位终止解除劳动合同证明书
2014/10/06 职场文书
档案接收函格式
2015/01/30 职场文书
2015年文秘个人工作总结
2015/10/14 职场文书
预备党员的思想汇报,你真的会写吗?
2019/06/28 职场文书
2019最新公司租房合同(例文)
2019/07/18 职场文书
SQL写法--行行比较
2021/08/23 SQL Server
Nginx+Tomcat负载均衡多实例详解
2022/04/11 Servers