я нашел это расширение за Yii 1.1
но не вижу соответствующих расширений для Yii 2
, Поэтому мне интересно, есть ли он или он встроен по умолчанию?
Кроме того, когда свойства данных устанавливаются в вашем model
для такой формы, как:
namespace app\models;
use yii\base\model;
class SignupForm extends Model {
public $company_name;
public $first_name;
public $last_name;
public $email;
public $username;
public $password;
public $password_again;
/**
* Validation rules
*/
public function rules() {
return [
// Format some data
[['company_name', 'first_name', 'last_name', 'email', 'username', 'password', 'password_again'], 'trim'],
['username', 'filter', 'filter' => 'strtolower'],
// If company scenario, require company name
['company_name', 'required', 'on' => 'company'],
//..............
];
)
}
Эти данные очищаются по умолчанию или нужно их самим обрабатывать?
Поэтому я думаю, что мой главный вопрос — как санировать данные с помощью Yii 2?
Вы можете попробовать использовать HTMLPurifier для очистки ввода следующим образом:
[['attr1', 'attr2'], function ($attribute) {
$this->$attribute = \yii\helpers\HtmlPurifier::process($this->$attribute);
}],
Я удивлен, что за 4 месяца эта тема не получила больше отзывов.
Я думаю, что не существует простого, всеобъемлющего расширения, и, как и в любом веб-приложении, оно зависит от типа вводимых данных и того, как вы собираетесь их хранить, а затем использовать.
Тем не менее, я думаю, что следующая вики-страница Yii1 все еще имеет отношение к Yii2 и показывает вам, какая проверка актуальна и когда:
http://www.yiiframework.com/wiki/275/how-to-write-secure-yii-applications/