`

ThinkPHP3.1新特性 动态设置自动验证和自动完成

阅读更多

ThinkPHP3.1新特性 动态设置自动验证和自动完成

在3.1版本之前,如果需要设置自动验证或者自动完成,一般来说必须定义在模型中,或者通过setProperty方法动态设置属性来完成,缺点是不太方便动态改变和调整。
不过3.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方法了。

 

分享到:
评论

相关推荐

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

    在ThinkPHP3.1框架中,开发者们迎来了一个新的特性,那就是动态设置自动完成(Auto-Complete)和自动验证(Auto-Validation)。这个功能显著提升了开发的灵活性,使得在处理数据时更加便捷,尤其是在需要根据不同...

    ThinkPHP3.1新手入门.zip

    在掌握了ThinkPHP3.1基础知识后,可以继续深入学习ThinkPHP的其他版本,如ThinkPHP5.x,了解其新特性和改进。同时,拓宽PHP知识面,学习更多PHP框架如Laravel、Yii等,提升自身开发能力。 通过《ThinkPHP3.1新手...

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

    3.1版本引入了`auto`和`validate`两个连贯操作,允许开发者在Action层动态设置自动完成和自动验证规则。 **自动完成(Auto Completion)**: 自动完成是指在数据保存到数据库前,对某些字段进行预处理,如填充...

    ThinkPHP 3.1 API

    8. 自动加载:通过自动加载机制,ThinkPHP 3.1 可以自动找到并加载所需的类文件,减少了手动引入文件的繁琐工作。 9. 错误处理与日志:框架提供了完善的错误处理机制和日志系统,帮助开发者追踪和解决程序中的问题...

    thinkphp3.1开发的crm

    3.1版是该框架的一个稳定版本,发布于2012年,提供了MVC模式、模型、视图、控制器、自动验证、事务处理等核心功能,旨在简化Web应用的开发流程。 【描述】"解压代码到自己的目录下,修改配置文件,运行。其他的不要...

    ThinkPHP3.1新特性之多层MVC的支持

    ThinkPHP 3.1版本引入了多层MVC架构的支持,这一特性显著提高了大型项目管理和复杂业务处理的能力。MVC模式是一种常见的软件设计模式,它将应用程序分为模型(Model)、视图(View)和控制器(Controller)三个部分...

    PHP3.1快速入门系列教程

    以上是ThinkPHP3.1快速入门系列教程的主要知识点概览,这些知识点不仅涵盖了基本的框架使用方法,还涉及到了高级特性和安全实践等内容,非常适合初学者系统地学习和掌握ThinkPHP3.1框架的开发技巧。

    think php 3.1

    1. **MVC模式**:ThinkPHP 3.1遵循Model-View-Controller设计模式,将业务逻辑、数据处理和界面展示分离,使得代码结构更加清晰,易于维护。 2. **路由系统**:框架内置了强大的路由规则,允许开发者自定义URL模式...

    thinkphp完整源码.rar

    4.2 配置管理:通过配置文件管理应用设置,支持动态加载和覆盖,提供了灵活的配置策略。 4.3 错误与异常处理:ThinkPHP提供了一套完整的错误和异常处理机制,有助于调试和优化代码。 4.4 插件与钩子:通过钩子系统...

    thinkphp学习资料

    11. 自动验证:了解框架提供的自动验证功能,简化数据验证过程。 12. 自动完成:掌握如何使用自动完成功能,提高开发效率。 13. 命名范围:学习命名空间的使用,管理代码的结构和依赖。 14. 模板布局:掌握模板的...

    ThinkPHP 3.1.2 - PHP的开发框架MVC - 含Core,Extend,Example

    自动验证和完成:自动完成表单数据的验证和过滤,新版新增了IP验证和有效期验 证等更多的验证方式,配合自动完成可以生成安全的数据对象。 字段类型检测:系统会自动缓存字段信息和字段类型,支持非法字段过滤和...

    THINKPHP框架实例

    2.3 自动验证与填充 框架提供自动数据验证和填充功能,确保数据输入的准确性和安全性。 2.4 异常处理与日志记录 ThinkPHP有完善的异常处理机制,并能记录运行时错误和异常,便于问题定位和调试。 三、ThinkPHP实例...

    thinkphp3.0完全中文开发手册

    - **特性概述**:ThinkPHP 3.0 提供了自动加载、自动验证、自动完成、数据助手等功能,大大减少了开发人员的编码工作量。 **1.3 获取 ThinkPHP** - **下载方式**:可以通过官方网站提供的链接或使用 Composer 工具...

    ThinkPHP v1.0.0 开发人员指南

    - **Active Record**:通过 ActiveRecord 模式实现了数据库操作的简化,支持自动加载模型、数据验证等功能。 - **ORM**:利用 ORM 技术实现对象关系映射,提高开发效率。 #### 3.2 视图层(View) - **模板引擎**...

Global site tag (gtag.js) - Google Analytics