CakePHP Note (v1.3) > モデル > 検証 > 定義済み検証ルール

定義済み検証ルール

検証ルール

  • alphaNumeric(日本語が通ってしまう)
  • between
  • blank
  • cc(クレジットカード番号)
  • comparison
  • date
  • decimal
  • email(メールアドレス)
  • ip(IPアドレス)
  • minLength
  • maxLength(最大文字数/stelen()で検査するため日本語などの2バイト以上は正しく処理されない)
  • numeric
  • notEmpty(空欄かどうか)
  • phone
  • postal
  • ssn(社会保障番号)
  • url
  • custom(正規表現)


上記ようalphaNumericのように定義済み検証ルールが期待通り動かないものもあります。
そのような時には次のような対応策が考えられます。

  • 検証ルールの'custom'を指定して正規表現で検証を行う
  • モデル内に独自の検証用メソッドを作成する(AppModel.phpに記述するとどのモデルからも使えて便利です)
    • 独自の検証ルール名で検証用メソッドを作成する
    • 既存のルール名で独自の検証用メソッドを作成する

その他の検証ルール

  • 正規表現
  • コールバック関数名
  • userDefined
  • isUnique(重複チェック/更新時は更新対象レコードを除いて重複をチェックします/Modelクラスに実装されています)

CakePHP Note (v1.3)

Index