跳到内容

区域设置

编辑此页

验证一个值是否为有效的区域设置。

每个区域设置的 “value” 是任何 ICU 格式的区域设置 ID。例如,两个字母的 ISO 639-1 语言 代码(例如 fr),或者语言代码后跟下划线 (_) 和 ISO 3166-1 alpha-2 国家 代码(例如 fr_FR 代表法语/法国)。

给定的区域设置值在验证之前会被规范化,以避免大小写错误的问题并删除不必要的元素(例如,FR-fr.utf8 将被验证为 fr_FR)。

应用于 属性或方法
区域设置
验证器 LocaleValidator

基本用法

1
2
3
4
5
6
7
8
9
10
11
12
// src/Entity/User.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class User
{
    #[Assert\Locale(
        canonicalize: true,
    )]
    protected string $locale;
}

注意

与其他大多数约束一样,null 和空字符串被认为是有效值。这是为了允许它们成为可选值。如果该值是强制性的,一个常见的解决方案是将此约束与 NotBlank 结合使用。

选项

分组

类型: array | string 默认值: null

它定义了此约束的验证组。阅读更多关于 验证组 的信息。

消息

类型: string 默认值: This value is not a valid locale.

如果字符串不是有效的区域设置,则显示此消息。

你可以在此消息中使用以下参数

参数 描述
{{ value }} 当前(无效)值
{{ label }} 对应的表单字段标签

载荷

类型: mixed 默认值: null

此选项可用于将任意特定于域的数据附加到约束。配置的载荷不会被 Validator 组件使用,但其处理完全取决于你。

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

本作品,包括代码示例,根据 Creative Commons BY-SA 3.0 许可协议获得许可。
目录
    版本