遍历

编辑本页

遍历

对象属性只有在可访问时才会被验证,无论是通过公共的还是具有公共访问方法(例如公共getter)。如果需要遍历对象以验证其数据,则可以使用此约束。

适用于
遍历

基本用法

在下面的示例中,创建两个类BookCollection而且它们的性质都有约束条件。

  • 属性
  • YAML
  • XML
  • PHP
12 34 56 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
/ / src /实体/ BookCollection.php名称空间应用程序实体使用应用程序实体使用学说常见的集合ArrayCollection使用学说常见的集合集合使用学说ORM映射作为ORM使用ob娱乐下载组件验证器约束作为断言# (ORM \实体)#(断言\导线)BookCollection实现了IteratorAggregate/ * * *@var字符串* /# (ORM \列)#(断言\ NotBlank)受保护的的名字/ * * *@var收藏|书[]* /# (ORM \多(targetEntity:书::类))受保护的//一些其他属性公共函数__construct()->书=ArrayCollection ();}/ /……名称Setter,书籍加法器和删除器//可以通过调用getter来验证名称公共函数getName()字符串返回->名称;}/ * * *@return\Generator|Book[]指定作者的图书*/公共函数getBooksForAuthor(作者作者可迭代的foreach->作为) {如果->isAuthoredBy (作者)) {收益率;}}}//既不是上面的方法,也不是任何其他特定的getter//可以用来验证所有嵌套的书籍;//需要遍历该对象以调用迭代器公共函数getIterator()返回->->getIterator ();}}

当对象实现时\可反驳的(就像这里和它的孩子\ IteratorAggregate),它的遍历策略将隐式地设置,对象将在不定义约束的情况下迭代。方法将其显式添加或禁用遍历是非常有用的遍历选择。如果存在一个公共getter来返回内部的图书集合,比如getBooks():收集,有效的约束可用于美元的书财产。

选项

选项对此约束不可用。

遍历

类型布尔默认的真正的

的实例\可反驳的默认情况下遍历,使用此选项禁用验证:

  • 属性
  • YAML
  • XML
  • PHP
12 3 4 5 6 7 8 9 10 11 12
/ / src /实体/ BookCollection.php/ /……同上/** *…* /#[断言\导线(假)BookCollection实现了IteratorAggregate/ /……

有效载荷

类型混合默认的

此选项可用于将任意特定于领域的数据附加到约束。已配置的有效负载不由Validator组件使用,但其处理完全取决于您。

例如,您可能想使用若干错误级别根据错误的严重程度,在前端以不同的方式呈现失败的约束。

此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。
ob娱乐下载Symfony 6.2支持通过苏禄人
ob娱乐下载Symfony 6.2支持通过Les-Tilleuls.coop