Laravel的验证课程是否会消毒?

时间:2014-07-31 19:44:46

标签: php validation laravel-4 sanitize

我无法在文档中找到有关Validation类是否清理数据的任何信息。由于显而易见的原因,每个人似乎都使用验证类,但我认为没有消毒。

以一个包含2个输入字段,名称和描述的表单为例。在这种情况下,只需要名称。处理表单提交:

$validator = Validator::make(
    Input::all(),
    array(
        'name' => 'required|min:2'
    )
);

假设验证没有错误,根据大多数教程(和文档),我只会使用;

SomeModel::create(array(
    'name' => Input::get('name'),
    'description' => Input::get('description')
));

这个班级会清理数据吗?或者我可以期望数据与我在表单上输入的数据完全相同吗?要求至少2个字符很难消毒。

任何方向都表示赞赏。

1 个答案:

答案 0 :(得分:0)

据我所知,Laravel不会进行消毒。

将此添加到composer.json

"frozennode/xssinput": "dev-master",

然后到config/app.phpproviders添加

'Frozennode\XssInput\XssInputServiceProvider'

aliases

'Input'           => 'Frozennode\XssInput\XssInput'

然后这会做一些消毒

SomeModel::create(array(
    'name' => Input::get('name'),
    'description' => Input::get('description')
));

github上的结帐库 https://github.com/FrozenNode/XssInput

这样,您无需更改代码。只是做

composer update