使用Symfony中的Doctrine Type Constraint验证数据类型是否有用?
实际上,当您尝试将错误类型的数据放入数据库时,Symfony会抛出异常并显示以下消息:
"名称的类型"属性必须是"字符串","整数"给定"
因此,先验没有SQL注入的危险。
此外,在我看过的每个教程中,都没有类型检查。
你怎么看?
答案 0 :(得分:0)
这取决于,在某些情况下,使用类型验证约束是绝对有意义的。 但是使用PHP7时,如果使用严格模式的标量类型声明,则某些类型验证是多余的。
/**
* @param string $email
*/
public function setEmail(string $email)
{
$this->email = $email;
}
答案 1 :(得分:0)
您的实体对象可以存储在多种数据库中。今天它是MySQL,明天由于某些原因,你可以选择传递给AWS DynamoDb存储(插入数据时没有类型断言)。所以基本上,在您的域实体上使用验证器是我认为所有必须要做的事情。