时间:2021-07-01 10:21:17 帮助过:32人阅读
TP框架中的自动验证和自动完成有什么区别??
自动验证(autoValidation)
和自动完成(autoOperation)
,还有自动检测Token验证(autoCheckToken)
是ThinkPHP框架里面create方法提供的功能.
就是说,只有当你使用create创建数据对象的时候,才会调用这些方法.
其中,自动验证(autoValidation)
和自动完成(autoOperation)
不同点在于:
/**
* 创建数据对象 但不保存到数据库
* @access public
* @param mixed $data 创建数据
* @param string $type 状态
* @return mixed
*/
public function create($data='',$type='') {
... ...
// 数据自动验证
if(!$this->autoValidation($data,$type)) return false;
... ...
// 创建完成对数据进行自动处理
$this->autoOperation($data,$type);
// 赋值当前数据对象
$this->data = $data;
// 返回创建的数据以供其他调用
return $data;
}
自动验证会对数据进行判定,若验证失败,则终止数据对象的创建,而自动完成则是自动对数据对象进行处理,并不会去终止数据对象的创建.
就是字面意思
自动验证,比如某字段必须填写,邮箱格式,手机号格式等等
自动完成,比如创建时间为自动当前时间,密码MD5自动加密等等
自动验证 就是在向数据库
写数据的时候,在model层添加的一系列的验证规则
自动完成 就是在满足一定的条件时,将准备向数据库插入的记录中添加自己期望的一些字段,比如更新时间,创建时间等等
我觉得你更改好好学学中文先