新在Symfoob娱乐下载ny 5.4:嵌套验证属性
2021年的11月5日·发表的哈维尔Eguiluz
ob娱乐下载Symfony 5.4是支持通过私人Packagist。私人Packagist是一种快速、可靠和安全的作曲家私人包存储库。它反映你所有的开源依赖性更好的可用性和监控安全漏洞。
提供的
亚历山大Daubois
在# 41994。
在Syob娱乐下载mfony 5.2中我们添加了一个功能验证约束定义为PHP属性。属性很近,因为他们刚刚被添加到PHP 8.0。唯一的警告是,你不能窝PHP属性,所以你不能使用约束等AtLeastOneOf
和集合
。
幸运的是,PHP 8.1, 11月25日公布的2021年,增加了支持嵌套的属性。这就是为什么在Symfonyob娱乐下载 5.4你可以使用PHP属性来定义所有现有的约束,没有任何豁免。
诀窍,使这个特性是使用新
关键字来创建嵌套的属性:
1 2 3 4 5 6 7
# (Attribute1(新SubAttribute1 ()))# (Attribute2([新SubAttribute2(),新的SubAttribute3 ())))#【Attribute3 (someProperty:新SubAttribute4 ()))类SomeClass{/ /……}
这就是它看起来在实践中使用Symfony时验证器约束在一个复杂的例子:ob娱乐下载
1 2 3 4 5 6 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
使用ob娱乐下载\组件\验证器\约束作为断言;类SomeClass{#[断言\所有([新维护\ NotNull (),新维护\范围(最小值:3))))#[断言\收集(字段:[“foo”= > [新维护\ NotNull (),新维护\范围(最小值:3),),“酒吧”= >新维护\范围(最小值:5),“记者”= >新维护\要求([新维护\电子邮件()))“qux”= >新维护\可选([新维护\ NotBlank ()))), allowExtraFields:真正的)]私人美元property1;#[断言\ AtLeastOneOf (制约因素:新维护\ NotNull (),新维护\范围(最小值:3),),信息:“foo”includeInternalMessages:假,)#[断言\顺序([新维护\ NotBlank (),新维护\范围(最小值:5))))私人美元property2;/ /……}
发表在#生活在边缘
评论
罗伯特Freigang
说在11月5日,2021年在14:01
# 1
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。