Class: ValidatorMagic
Source Location: /ValidatorMagic/vm/ValidatorMagic.php
Class ValidatorMagic
Class Overview
|
雑多な入力検証を提供する入力検証クラス。
よく使う入力検証の機能を集めました。 エラーがあれば、エラーオブジェクトを返します。 エラークラスをバンドルしていますが、オリジナルの物を使用することもできます。
バリデータのリスト - "number" => 数値かどうか。小数点も許容します。(OPTION:なし)
- "naturalnumber" => 整数かどうか。0も許容します。(OPTION:なし)
- "integer" => 数字かどうか。小数点は使用出来ません(OPTION:なし)
- "numbermax" => 数値の最大(OPTION:最大数)
- "numbermin" => 数値の最小(OPTION:際少数)
- "alphabet" => アルファベットかどうか(OPTION:なし)
- "alphabetornumber" => アルファベットもしくは数字かどうか(OPTION:なし)
- "rome" => ローマ字区域(半角英語+半角数字+半角記号)の文字列か(OPTION:半角化するか)
- "maxlen" => 最大文字数(OPTION:最大数)
- "minlen" => 最小文字数(OPTION:最小数)
- "maxwidth" => 最大文字幅。全角2半角1(OPTION:最大数)
- "minwidth" => 最小文字幅。全角2半角1(OPTION:最少数)
- "blank" => 空白かどうか(OPTION:なし)
- "noblank" => 空白でないか(OPTION:なし)
- "nosubmit" => 送信されているか(OPTION:なし)
- "encoding" => 文字のエンコーディング(OPTION:エンコード名)
- "notags" => タグが含まれていないか(OPTION:なし)
- "depend" => 機種依存文字が含まれていないか(OPTION:なし)
- "mailformat" => メールフォーマットの文字列になっているか(OPTION:なし)
- "mailsimple" => simpleなメールフォーマットチェック
- "mail" => ドメインも確認(OPTION:なし)
- "hiragana" => ひらがなか(OPTION:カタカナをひらがなに直すか)
- "katakana" => カタカナか(OPTION:ひらがなをカタカナに直すか)
- "hfurigana" => ひらがなのふりがなか(OPTION:カタカナをひらがなに直すか)
- "kfurigana" => カタカナのフリガナか(OPTION:ひらがなをカタカナに直すか)
- "urlformat" => URLフォーマットの文字列になっているか(OPTION:なし)
- "url" => ドメインも確認(OPTION:なし)
- "telephone" => 電話番号のフォーマットになっているか
- "postcodeformat" => 郵便番号のフォーマットになっているか(OPTION:なし)
- "whitelist" => ホワイトリストに含まれているか(OPTION:ホワイトリストの配列)
- "date" => YYYYMMDD形式のデータもしくは配列が、日付フォーマットになっているか(OPTION:array("year" => "年の配列キー","month" => "月の配列キー","day" => "日の配列キー"))
- "time" => 時間フォーマットになっているか(OPTION:時間のフォーマット。定数参照)
- "array" => 配列か(OPTION:なし)
- "notarray" => でないか配列か(OPTION:なし)
- "arraykeyexists" => 配列の中に指定されたキーが入っているか
- "arraynumber" => 配列の中身は全て数字か(OPTION:なし)
- "arraynumbermax" => 配列の中身の数字の合計最大(OPTION:最大数)
- "arraynumbermin" => 配列の中身の数字の合計最小(OPTION:最小数)
- "arraycountmax" => 配列の数の最大(OPTION:最大数)
- "arraycountmin" => 配列の数の最小(OPTION:最小数)
- "arrayunique" => 配列の値がuniqueかどうか(空文字列・NULLはuniqueチェックから省くかどうか)
- "maxbr" => 改行数の最大(OPTION:最大数)
- "minbr" => 改行数の最小(OPTION:最小数)
- "dirpath" => 存在するディレクトリパスか(OPTION:なし)
- "file" => 存在するファイル化(OPTION:なし)
- "ereg" => ルビー互換の正規表現にマッチするか(OPTION:正規表現)
- "preg" => パール互換の正規表現にマッチするか(OPTION:正規表現)
Located in /ValidatorMagic/vm/ValidatorMagic.php [line 139]
|
Properties
|
Methods
|
Method Summary
| void |
chain() |
検証に使用するバリデータを鎖状につなぎます。 |
| array,object |
execute() |
実行するバリデータチェイン名を指定して実行 |
| bool |
isError() |
バリデート結果がエラーかどうかを判断する |
Properties
バリデーションチェインのフォーマット
バリデーションチェインの既定値グループを登録します。 何度も同じチェインを使用する場合などに便利です。 直接配列で指定可能ですが、メソッドを呼び出して簡単に登録することもできます。
API Tags:
| See: | getChainFormat(); |
| See: | setChainFormat(); |
エラーを受け取るクラス名
入力検証で、エラーになった場合に呼び出されるエラー処理クラス名。 API Tags:
エラーを受け取るクラスファイルパス
エラー処理クラスへのパス。 API Tags:
エラーのリストを格納しているファイル名
エラーハンドリングクラスインスタンス作成時に、第一引数として渡されます。 falseをしまうと、引数指定無しでインスタンスを作成します。 API Tags:
Methods
void autoPrepare(
string,array
$validation_name, string|array
$validator, [int|string
$error_code = 0], [bool
$validator_chain = true], [bool
$trim = false], [integer|boolean
$post_only = 3], [mix
$validate_mode = false]
)
|
|
バリデート機能定義(自動)
検証する入力データを自動で取得・定義して、新規にバリデータにかけます。 デフォルト取得されるデータは、$_POST・$_GETの両方からサーチします。 $post_only に VM_METHOD_GET(GETのみ) VM_METHOD_POST(POSTのみ) VM_METHOD_POST|VM_METHOD_GET(両方/デフォルトはこれ) を指定することで、受け取るデータに制限をかける事が出来ます。 ※上位互換のため、bool型もサポートしていますが、これは推奨されません。
Parameters:
|
string,array |
$validation_name: |
バリデートするフォームデータ名。
array("バリデートするフォームデータ名" => フォーム名)
配列を指定することで、フォーム名をつけることができます。
フォーム名は、エラー発生時にエラークラスに渡されます。 |
|
string|array |
$validator: |
バリデータ名,$this->getChainFormat()の結果 |
|
int|string |
$error_code: |
エラーコード |
|
bool |
$validator_chain: |
エラーがあった場合に確認処理を継続するか |
|
bool |
$trim: |
入力検証データをtrimするかどうか |
|
mix |
$validate_mode: |
バリデータオプション |
|
integer|boolean |
$post_only: |
VM_METHOD_POST = POSTのみ VM_METHOD_GET = GETのみ VM_METHOD_POST|VM_METHOD_GET = POSTかGETのどちらか。 |
API Tags:
void chain(
string
$validation_name, string
$validator, [int,string
$error_code = 0], [bool
$validator_chain = true], [bool,string,int,array
$validate_mode = false]
)
|
|
検証に使用するバリデータを鎖状につなぎます。
ひとつの入力データに対して、複数のバリデータを使いたい場合に使用します。 バリデータはchain()で呼び出された順番に、実行されます。
Parameters:
|
string |
$validation_name: |
バリデートするフォームデータ名 |
|
string |
$validator: |
バリデータ名 |
|
int,string |
$error_code: |
エラーコード |
|
bool |
$validator_chain: |
エラーの場合につなげてバリデート処理を行うか |
|
bool,string,int,array |
$validate_mode: |
バリデータオプション |
array,object execute(
string,array
$validation_name, [bool
$object_clean = TRUE]
)
|
|
実行するバリデータチェイン名を指定して実行
入力検証を実行しエラークラス、もしくは、保証されたデータを受け取ります。 isError()メソッドでエラーのチェックを行えます。
Parameters:
|
string,array |
$validation_name: |
バリデートするフォームデータ名 |
|
bool |
$object_clean: |
エラーオブジェクトを毎回空にするか |
API Tags:
array,object executeAll(
)
|
|
すべて実行
入力検証を全て実行しエラークラス、もしくは、保証されたデータを受け取ります。 isError()メソッドでエラーのチェックを行えます。
API Tags:
初期化
ValidatorMagicの初期化をします。 全てのエラー、チェインは空になります。
Redefined in descendants as:
array getChainFormat(
string
$group
)
|
|
チェインのフォーマットを返します
setChainFormat()メソッドなどで指定された、フォーマットを返します。 1 $vm->autoPrepare(array("mail" => "メールアドレス", $vm->getChainFormat("mail")); 2 $res = $vm->execute("mail"); 3 var_dump($vm->isError($res)); 4 5 return bool
Parameters:
|
string |
$group: |
フォーマットグループ名 |
API Tags:
| See: | autoPrepare(); |
| See: | prepare(); |
| See: | setChainFormat(); |
bool isError(
object,string,int,array
$result
)
|
|
バリデート結果がエラーかどうかを判断する
バリデート結果がエラーかどうかを判断し、実行結果はエラーの場合に、TRUEを返します。
Parameters:
|
object,string,int,array |
$result: |
execute()・executeAllの結果 |
void prepare(
string,array
$validation_name, string,array
$validator, string,bool,object,array,string,int
$validation_data, [int,string
$error_code = 0], [bool
$validator_chain = true], [bool,string,int,array
$validate_mode = false], bool
$trim, bool
$post_only
)
|
|
バリデート機能定義(手動)
検証する入力データを手動で取得・定義して、新規にバリデータにかけます。
Parameters:
|
string,array |
$validation_name: |
バリデートするフォームデータ名。
array("データ名" => "フォーム名")
配列を指定することで、フォーム名をつけることができます。
フォーム名は、エラー発生時にエラークラスに渡されます。 |
|
string,array |
$validator: |
バリデータ名,$this->getChainFormat()の結果 |
|
int,string |
$error_code: |
エラーコード |
|
bool |
$validator_chain: |
エラーがあった場合に確認処理を継続するか |
|
bool |
$trim: |
入力検証データをtrimするかどうか |
|
bool |
$post_only: |
TRUEで、POSTのみ取得 |
|
bool,string,int,array |
$validate_mode: |
バリデータオプション |
|
string,bool,object,array,string,int |
$validation_data: |
バリデートするデータ |
API Tags:
void registerValidators(
string
$validator_name, string
$function_name
)
|
|
ユーザー定義のバリデータを追加する
execute()実行時に、 userFunction([検証されるデータ], [指定されたオプション]); の形で、指定された関数にわたります。 ユーザー定義関数からは、正しい場合true・間違っている場合falseを返してください。
Parameters:
|
string |
$validator_name: |
読み出しに使用するバリデータ名 |
|
string |
$function_name: |
関数名 |
void setChainFormat(
string
$group, string
$validator, [string,int
$order = "AUTO"], [int,string
$error_code = 0], [bool
$validator_chain = true], [bool,string,int,array
$validate_mode = false]
)
|
|
チェインのフォーマットを作成します
入力検証のフォーマットを作成して、簡単に再利用可能にします。
Parameters:
|
string |
$group: |
フォーマットグループ名 |
|
string |
$validator: |
バリデータ名 |
|
string,int |
$order: |
チェインされる順番 |
|
int,string |
$error_code: |
エラーコード |
|
bool |
$validator_chain: |
エラーの場合につなげてバリデート処理を行うか |
|
bool,string,int,array |
$validate_mode: |
バリデータオプション |
API Tags:
void setEmptyFormData(
object
$empty_form_data
)
|
|
空欄フォームの標準値を設定する
Parameters:
void setErrorObject(
object
&$error_obj
)
|
|
エラーオブジェクトを直接指定する
Parameters:
void unchain(
$validation_name
$validation_name, $validator
$validator
)
|
|
バリデータの使用をキャンセルする
一度チェインされたバリデータの使用をキャンセルします。 全てのチェインを消す場合は、free()メソッドが高速です。
Parameters:
|
$validation_name |
$validation_name: |
バリデーション名 |
|
$validator |
$validator: |
キャンセルするバリデータ |
API Tags:
bool validation(
string
$validator, string,arrray
$data, string,array
$option
)
|
|
簡単にバリデートする
入力データを簡単に検証します。 正しければ、TRUE違っていれば、FALSEを返します。
Parameters:
|
string |
$validator: |
使用するバリデータ |
|
string,arrray |
$data: |
バリデータにかけるデータ |
|
string,array |
$option: |
バリデータオプション |
Documentation generated on Thu, 04 Jan 2007 17:47:23 +0900
|