thinkPHP3.2.2 中,在自动完成中,MD5会加密空字符串的问题。
当我们在更新用户数据时,有时会遇到只更新部分用户数据,并不更新密码
此时,密码仍然会被MD5会加密,并且,被加密的是一个空字符串。
此时只要改变自动完成的方式即可,将规则改成回调函数即可,
下文即讲解
字段映射直接略过
protected $_auto = array(
array('password','passenc','3','callback')
);
public function passenc($data){ // $data 即 password 的值
if( !empty($data) ){
$pwd = md5($data)
}
return $pwd
}
即可顺利解决
当我们在更新用户数据时,有时会遇到只更新部分用户数据,并不更新密码
此时,密码仍然会被MD5会加密,并且,被加密的是一个空字符串。
此时只要改变自动完成的方式即可,将规则改成回调函数即可,
下文即讲解
字段映射直接略过
protected $_auto = array(
array('password','passenc','3','callback')
);
public function passenc($data){ // $data 即 password 的值
if( !empty($data) ){
$pwd = md5($data)
}
return $pwd
}
即可顺利解决