CardScheme

This constraint ensures that a credit card number is valid for a given credit card company. It can be used to validate the number before trying to initiate a payment through a payment gateway.

この制約により、クレジット カード番号が特定のクレジット カード会社に対して有効であることが保証されます。支払いゲートウェイを介して支払いを開始する前に、番号を検証するために使用できます。

Basic Usage

To use the CardScheme validator, apply it to a property or method on an object that will contain a credit card number.

CardScheme バリデータを使用するには、クレジット カード番号を含むオブジェクトのプロパティまたはメソッドに適用します。
  • Attributes
    属性
  • YAML
    YAML
  • XML
    XML
  • PHP
    PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
// src/Entity/Transaction.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class Transaction
{
    #[Assert\CardScheme(
        schemes: [Assert\CardScheme::VISA],
        message: 'Your credit card number is invalid.',
    )]
    protected $cardNumber;
}

Note

ノート

As with most of the other constraints, null and empty strings are considered valid values. This is to allow them to be optional values. If the value is mandatory, a common solution is to combine this constraint with NotBlank.

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

Available Options

groups

type: array | string

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

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

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

message

type: string default: Unsupported card type or invalid card number.

type: string default: サポートされていないカード タイプまたは無効なカード番号。

The message shown when the value does not pass the CardScheme check.

値が CardScheme チェックに合格しなかった場合に表示されるメッセージ。

You can use the following parameters in this message:

このメッセージでは、次のパラメーターを使用できます。
Parameter Description
{{ 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.

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

schemes

type: mixed [default option]

タイプ: 混合 [デフォルト オプション]

This option is required and represents the name of the number scheme used to validate the credit card number, it can either be a string or an array. Valid values are:

このオプションは必須で、クレジット カード番号の検証に使用される番号スキームの名前を表します。文字列または配列のいずれかです。有効な値は次のとおりです。
  • AMEX
    アメックス
  • CHINA_UNIONPAY
    CHINA_UNIONPAY
  • DINERS
    食事客
  • DISCOVER
    発見する
  • INSTAPAYMENT
    分割払い
  • JCB
    JCB
  • LASER
    レーザ
  • MAESTRO
    マエストロ
  • MASTERCARD
    マスターカード
  • MIR
    ミール
  • UATP
    UATP
  • VISA
    ビザ

For more information about the used schemes, see Wikipedia: Issuer identification number (IIN).

使用されているスキームの詳細については、Wikipedia: 発行者識別番号 (IIN) を参照してください。