Type

Validates that a value is of a specific data type. For example, if a variable should be an array, you can use this constraint with the array type option to validate this.

値が特定のデータ型であることを検証します。たとえば、変数が配列でなければならない場合、この制約を配列タイプ オプションとともに使用して、これを検証できます。
Applies to property or method
Class Type
Validator TypeValidator

Basic Usage

This will check if emailAddress is an instance of Symfony\Component\Mime\Address, firstName is of type string (using is_string PHP function), age is an integer (using is_int PHP function) and accessCode contains either only letters or only digits (using ctype_alpha and ctype_digit PHP functions).

これは、emailAddress が Symfony\Component\Mime\Address のインスタンスであるか、firstName が文字列型 (is_string PHP 関数を使用) であるか、age が整数 (is_int PHP 関数を使用) であるか、および accessCode が文字のみまたは数字のみを含むか (ctype_alpha および ctype_alpha を使用) をチェックします。 ctype_digit PHP 関数)。
  • Attributes
    属性
  • YAML
    YAML
  • XML
    XML
  • PHP
    PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// src/Entity/Author.php
namespace App\Entity;

use Symfony\Component\Mime\Address;
use Symfony\Component\Validator\Constraints as Assert;

class Author
{
    #[Assert\Type(Address::class)]
    protected $emailAddress;

    #[Assert\Type('string')]
    protected $firstName;

    #[Assert\Type(
        type: 'integer',
        message: 'The value {{ value }} is not a valid {{ type }}.',
    )]
    protected $age;

    #[Assert\Type(type: ['alpha', 'digit'])]
    protected $accessCode;
}

Note

ノート

As with most of the other constraints, null is considered a valid value. This is to allow the use of optional values. If the value is mandatory, a common solution is to combine this constraint with NotNull.

他のほとんどの制約と同様に、null は有効な値と見なされます。これは、オプションの値を使用できるようにするためです。値が必須の場合、一般的な解決策は、この制約を NotNull と組み合わせることです。

Options

groups

type: array | string

タイプ: 配列 |ストリング

It defines the validation group or groups of this constraint. Read more about validation groups.

この制約の検証グループを定義します。検証グループの詳細を参照してください。

message

type: string default: This value should be of type {{ type }}.

タイプ: 文字列 デフォルト: この値はタイプ {{ タイプ }} である必要があります。

The message if the underlying data is not of the given type.

基になるデータが指定されたタイプでない場合のメッセージ。

You can use the following parameters in this message:

このメッセージでは、次のパラメーターを使用できます。
Parameter Description
{{ type }} The expected type
{{ value }} The current (invalid) value
{{ label }} Corresponding form field label

payload

type: mixed default: null

タイプ: 混合 デフォルト: null

This option can be used to attach arbitrary domain-specific data to a constraint. The configured payload is not used by the Validator component, but its processing is completely up to you.

このオプションは、任意のドメイン固有のデータを制約に添付するために使用できます。構成されたペイロードは Validator コンポーネントによって使用されませんが、その処理は完全にユーザー次第です。

For example, you may want to use several error levels to present failed constraints differently in the front-end depending on the severity of the error.

たとえば、いくつかのエラー レベルを使用して、エラーの重大度に応じて、失敗した制約をフロントエンドで異なる方法で提示することができます。

type

type: string or array [default option]

タイプ: 文字列または配列 [デフォルト オプション]

This required option defines the type or collection of types allowed for the given value. Each type is either the FQCN (fully qualified class name) of some PHP class/interface or a valid PHP datatype (checked by PHP's is_() functions):

この必須オプションは、指定された値に許可されるタイプまたはタイプのコレクションを定義します。各タイプは、一部の PHP クラス/インターフェースの FQCN (完全修飾クラス名) または有効な PHP データ型 (PHP の is_() 関数でチェック) のいずれかです。

Also, you can use ctype_*() functions from corresponding built-in PHP extension. Consider a list of ctype functions:

また、対応する組み込み PHP 拡張機能の ctype_*() 関数を使用することもできます。 ctype 関数のリストを考えてみましょう:

Make sure that the proper locale is set before using one of these.

これらのいずれかを使用する前に、適切なロケールが設定されていることを確認してください。