我找到了Yii 1.1
的{{3}},但没有看到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清理数据?
答案 0 :(得分:5)
您可以尝试使用HTMLPurifier来清理输入,如下所示:
[['attr1', 'attr2'], function ($attribute) {
$this->$attribute = \yii\helpers\HtmlPurifier::process($this->$attribute);
}],
答案 1 :(得分:0)
我很惊讶在4个月内这个主题没有得到更多反馈。
我认为没有简单的,万能的扩展,并且与任何Web应用程序一样,它取决于输入的数据类型以及如何存储它然后使用它。
但是,我认为以下Yii1维基页面仍然与Yii2相关,并向您显示验证的相关性以及何时:
http://www.yiiframework.com/wiki/275/how-to-write-secure-yii-applications/