过滤以强制所有操作小写

Filter to force lowercase on all operations

我正在使用 Yii2 并尝试对我的用户名实施规则,以便它们始终以小写形式存储和比较。我是否可以使用规则来实现这一点?

例如,我有一个函数可以检查用户名是否存在于数据库中。我想避免逻辑错误并尽可能实施全局规则。感谢您的任何提示!

Yii2 规则:

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['username', 'password'], 'required'],
            [['access_level'], 'integer'],
            [['username'], 'string', 'max' => 50], // force lowercase?
            [['username_print'], 'string', 'max' => 50],
            [['password'], 'string', 'max' => 512],
            [['email'], 'string', 'max' => 250],
            [['username'], 'unique']
        ];
    }

这样使用

['username', 'filter', 'filter'=>'strtolower'],