【问题标题】:Is Type validation useful with Doctrine (in Symfony)?类型验证对 Doctrine 有用吗(在 Symfony 中)?
【发布时间】:2017-08-13 18:38:26
【问题描述】:

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

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

“name”属性的类型必须是“string”,“integer”给定。”

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

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

你怎么看?

【问题讨论】:

  • Sql 查询需要时间。所以最好在查询之前验证数据。这就是它有用的地方。

标签: symfony validation doctrine


【解决方案1】:

您的entity 对象可以存储在多种DB 中。今天是 MySQL,明天由于某些原因,您可以选择传递给 AWS DynamoDb 存储(插入数据时没有类型断言)。所以基本上,在我看来,在您的域 entities 上使用 validators 是我们所有必须做的事情。

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 2013-04-30
      • 2013-03-26
      • 1970-01-01
      • 2020-01-14
      • 1970-01-01
      • 2018-06-03
      • 2011-12-06
      • 2021-01-27
      • 1970-01-01
      相关资源
      最近更新 更多