类型验证对Doctrine有用吗(在Symfony中)?

时间:2017-08-13 18:38:26

标签: symfony validation doctrine

使用Symfony中的Doctrine Type Constraint验证数据类型是否有用?

实际上,当您尝试将错误类型的数据放入数据库时​​,Symfony会抛出异常并显示以下消息:

  

"名称的类型"属性必须是"字符串","整数"给定"

因此,先验没有SQL注入的危险。

此外,在我看过的每个教程中,都没有类型检查。

你怎么看?

2 个答案:

答案 0 :(得分:0)

这取决于,在某些情况下,使用类型验证约束是绝对有意义的。 但是使用PHP7时,如果使用严格模式的标量类型声明,则某些类型验证是多余的。

/**
 * @param string $email
 */
public function setEmail(string $email)
{
    $this->email = $email;
}

答案 1 :(得分:0)

您的实体对象可以存储在多种数据库中。今天它是MySQL,明天由于某些原因,你可以选择传递给AWS DynamoDb存储(插入数据时没有类型断言)。所以基本上,在您的域实体上使用验证器是我认为所有必须要做的事情。