UUID
验证值是否是符合 RFC 4122 标准的有效通用唯一识别码 (UUID)。默认情况下,这将根据 RFC 的指南验证格式,但可以放宽此限制以接受其他系统(如 PostgreSQL)接受的非标准 UUID。UUID 版本也可以使用允许的版本列表进行限制。
适用于 | 属性或方法 |
类 | Uuid |
验证器 | UuidValidator |
基本用法
1 2 3 4 5 6 7 8 9 10
// src/Entity/File.php
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class File
{
#[Assert\Uuid]
protected string $identifier;
}
注意
与大多数其他约束一样,null
和空字符串被认为是有效值。 这是为了允许它们成为可选值。 如果该值是强制性的,一个常见的解决方案是将此约束与 NotBlank 结合使用。
选项
message
类型: string
默认值: 这不是一个有效的 UUID。
如果字符串不是有效的 UUID,则会显示此消息。
你可以在此消息中使用以下参数
参数 | 描述 |
---|---|
{{ value }} |
当前(无效)值 |
{{ label }} |
对应的表单字段标签 |
normalizer
类型: 一个 PHP 可调用对象 默认值: null
此选项允许定义在检查给定值是否有效之前应用于该值的 PHP 可调用对象。
例如,你可能想要传递 'trim'
字符串以应用 trim PHP 函数,以便在验证期间忽略前导和尾随空格。
payload
类型: mixed
默认值: null
此选项可用于将任意特定于域的数据附加到约束。配置的 payload 不会被 Validator 组件使用,但其处理完全取决于你。
例如,你可能想要使用多个错误级别,以便根据错误严重性在前端以不同方式呈现失败的约束。
strict
类型: boolean
默认值: true
如果此选项设置为 true
,则约束将检查 UUID 的格式是否符合 RFC 的输入格式规则:216fff40-98d9-11e3-a5e2-0800200c9a66
。将其设置为 false
将允许其他输入格式,例如
216f-ff40-98d9-11e3-a5e2-0800-200c-9a66
{216fff40-98d9-11e3-a5e2-0800200c9a66}
216fff4098d911e3a5e20800200c9a66
本作品,包括代码示例,根据 Creative Commons BY-SA 3.0 许可协议获得许可。