php - 在 Symfony 中使用 OR 逻辑验证多个约束

标签 php symfony symfony4 symfony-validator

我在请求中有一个字段,可以是电子邮件或电话。现在我需要根据两个约束来验证它 - 标准电子邮件约束和自定义电话。我知道我可以传递一系列约束链接:

$constraint = new Constraints\Collection([
            'name' => new Constraints\NotBlank(),
            'uid' => [new Constraints\Email(), new Constraints\Phone()],
            'pass' => new Constraints\NotBlank()
        ]);

但是 Validator 将 AND 逻辑应用于约束数组,我需要 OR 以便如果该值适合其中之一,则验证成功。任何标准的 Symfony 手段都可以做到这一点吗?

最佳答案

Create a custom validator 并使用现有约束实现您自己的逻辑。
AFAIK 没有其他方法可以获得您所要求的东西。

关于php - 在 Symfony 中使用 OR 逻辑验证多个约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50523956/

相关文章:

php - 返回新响应返回空数据

php - 如何自动将数据从一台SQL服务器导出到Mysql表

PHP 表单处理;在服务器端获取用户友好的文本?

php - 在 PHP 中合并两个 sql 查询的结果

php - html2pdf 生成不正确的 pdf

php - 如何在 Symfony4 结构的参数文件中检索我的环境变量?

php - 如何处理一组数组输入并插入多行

symfony Twig 扩展 : 'only extend if'

php - 在 Symfony2 中访问与 Bundle 相关的文件

php - 如何使 in_memory security.yaml 提供的用户在 Symfony 4.3 中使用登录表单正常工作?