リクエスト ライブラリ
Ziu 付属のリクエストライブラリです。HTTPリクエストで送られる外来変数の値を取得をする機能を提供します。
設定
リクエストライブラリには事前の設定がありません。
単体で利用の設定方法
本バリデーションライブラリは、単体で使用することができます。
$r = new Request;
$req = $r->post();
Ziu で利用の設定方法
Ziu での利用では、ロジッククラスやユニットクラスで主に利用します。
public function init()
{
$this->req = lib('request')->post();
...
}
使い方
単データの取得
シンプルにデータ取得したい外来変数名を指定して値を取得します。(値のみを取得します)
$name = $r->post('name'); // $_POST['name'] を取得
変数が
$_POST['name'] = '山下';
の場合、取得値は山下
複数データの取得
任意に複数のデータ取得として、外来変数名をカンマ区切りで指定できます。(配列構造で取得します)
$data = $r->post('name,age'); // $_POST['name'], $_POST['age'] を取得
変数が
$_POST = array('name' => '山下', 'age' => 46, 'gender' => '男');
の場合
取得値はarray('name' => '山下', 'age' => 46);
配列データの取得
スラッシュ /
によるパス指定で外来変数の直接配列を取得することができます。(配列構造で取得します)
$data = $r->post('user/name,user/tel'); // $_POST['user']['name'], $_POST['user']['tel'] を取得
変数が
$_POST = array('user' => array('name' => '山下', 'age' => 46, 'gender' => '男', 'tel' => '0312346789'));
の場合
取得値はarray('user' => array('name' => '山下', 'tel' => '0312346789'));
全データの取得
外来変数名を省略すると全てのデータを取得することができます。(配列構造で取得します)
$name = $r->post(); // $_POST をそのまま取得
フォールバック
指定の外来変数が存在しない場合にデフォルト値を指定できます。
$age = $r->post('gender', 1); // $_POST['gender'] 取得に失敗すると 1 を返す
未指定は NULL
がデフォルト値となります。フォールバックは、単データ、複数データ、配列データの取得で利用できます。
正規表現フィルタ
外来変数値に対して正規表現によるフィルタリングができます。
正規表現にマッチしない場合は NULL
または、フォールバックに指定がある場合はそのデフォルト値が返ります。
$gender = $r->post('gender', 1, '/^\d$/');
正規表現フィルタは、単データ、複数データ、配列データの取得で利用できます。
メソッドリファレンス
リクエストライブラリのメソッドリファレンスです。
- GETメソッド
- POSTメソッド
- post() :
$_POST
値をサニタイズして取得 - raw_post() :
$_POST
値を取得
- post() :
- COOKIEメソッド
- cookie() :
$_COOKIE
値をサニタイズして取得
- cookie() :
- FILESメソッド
- files() :
$_FILES
値をサニタイズして取得
- files() :
GETメソッド
get($key = NULL, $fallback = NULL, $regex = NULL)
外来変数 $_GET
の値をサニタイズして取得します。
サニタイズ処理
一部の制御文字を除く制御文字を全て削除します。
削除制御文字の範囲 : NUL<00> から US<1f> の範囲と DEL<7f>
削除しない制御文字 : TAB<09>、LF<0a>、CR<0d>
戻り値
型 : mixed
引数値
項目 | 型 | 内容 |
---|---|---|
$key | string | 外来変数名 |
$fallback | mixed | デフォルト値 |
$regex | string | 正規表現 |
$key
を指定しない場合は $_GET
の値を全て取得できます。
例) $r->get('name');
raw_get($key = NULL, $fallback = NULL, $regex = NULL)
外来変数 $_GET
の値を取得します。(サニタイズ処理なし)
戻り値
型 : mixed
引数値
項目 | 型 | 内容 |
---|---|---|
$key | string | 外来変数名 |
$fallback | mixed | デフォルト値 |
$regex | string | 正規表現 |
例) $r->raw_get('name');
POSTメソッド
post($key = NULL, $fallback = NULL, $regex = NULL)
外来変数 $_POST
の値をサニタイズして取得します。
サニタイズ処理についてはget()を参照して下さい。
戻り値
型 : mixed
引数値
項目 | 型 | 内容 |
---|---|---|
$key | string | 外来変数名 |
$fallback | mixed | デフォルト値 |
$regex | string | 正規表現 |
例) $r->post('name');
raw_post($key = NULL, $fallback = NULL, $regex = NULL)
外来変数 $_POST
の値を取得します。(サニタイズ処理なし)
戻り値
型 : mixed
引数値
項目 | 型 | 内容 |
---|---|---|
$key | string | 外来変数名 |
$fallback | mixed | デフォルト値 |
$regex | string | 正規表現 |
例) $r->raw_post('name');
COOKIEメソッド
cookie($key = NULL, $fallback = NULL, $regex = NULL)
外来変数 $_COOKIE
の値をサニタイズして取得します。
サニタイズ処理についてはget()を参照して下さい。
戻り値
型 : mixed
引数値
項目 | 型 | 内容 |
---|---|---|
$key | string | 外来変数名 |
$fallback | mixed | デフォルト値 |
$regex | string | 正規表現 |
例) $r->cookie('id');
FILESメソッド
files($key = NULL, $fallback = NULL, $regex = NULL)
外来変数 $_FILES
の値をサニタイズして取得します。
サニタイズ処理についてはget()を参照して下さい。
戻り値
型 : mixed
引数値
項目 | 型 | 内容 |
---|---|---|
$key | string | 外来変数名 |
$fallback | mixed | デフォルト値 |
$regex | string | 正規表現 |
例) $r->files('image');