Php 在Yii 2中验证之前/期间对表单数据运行函数
好的,例如,如果有人输入用户名,我想在验证之前或验证开始时(在我的Php 在Yii 2中验证之前/期间对表单数据运行函数,php,yii,yii2,Php,Yii,Yii2,好的,例如,如果有人输入用户名,我想在验证之前或验证开始时(在我的rules方法中)将其改为小写,我该怎么做 我知道您可以使用trim进行类似的操作,例如: [['company_name', 'first_name', 'last_name', 'email', 'username', 'password', 'password2'], 'trim'] 但我想这不支持任何功能 因此,我想在用户名上运行strtolower函数,该怎么做?我是否需要在验证之前使用方法,或者我可以这样做 ['us
rules
方法中)将其改为小写,我该怎么做
我知道您可以使用trim进行类似的操作,例如:
[['company_name', 'first_name', 'last_name', 'email', 'username', 'password', 'password2'], 'trim']
但我想这不支持任何功能
因此,我想在用户名上运行strtolower函数,该怎么做?我是否需要在验证之前使用方法,或者我可以这样做
['username', 'makeLower']
public function makeLower($attribute, $params) {
$this->$attribute = strtolower($this->$attribute);
}
你可以用一个
FilterValidator实际上不是验证器,而是数据处理器。信息技术
调用指定的筛选器回调以处理属性值
并将处理后的值保存回属性。过滤器必须是空的
具有以下签名的有效PHP回调:
function foo($value) {...return $newValue; }
许多PHP函数限定此签名(例如trim()
)
function foo($value) {...return $newValue; }