Yii2 HTML 净化器

Yii2 HTML purifier

我有一个关于 Yii2 验证的问题。所以,我的模型验证规则是这样的:

return [
    ['status', 'required', 'on' => 'update'],
    [['status'], function ($attribute) {
        $this->$attribute = \yii\helpers\HtmlPurifier::process($this->$attribute);
    }],
];

问题是,如果内容是<script>alert('something')</script>,由于purifier,它会是空白的,内容会通过要求的验证。

那么我该如何重新验证要求的内容呢?或者有什么好的方法吗?

验证规则是一个接一个处理的,所以把第二个放在第一位。

return [
    ['status', 'filter', 'filter' => function ($value) {
        return \yii\helpers\HtmlPurifier::process($value);
    }],
    ['status', 'required', 'on' => 'update'],
];