PHP用のリクエストデータ取得ヘルパー作った

基本フレームワークを使うけど、ピュアPHPで組むことも多いころすけ(@wg_koro)です。

PHPでリクエストデータにアクセスする時って意外とめんどくさいですよね。例えば、
http:://hogefuga.com/?val=1
というURLで「val」にアクセスしたい時。

[php]
if(isset($_GET["val"])){
$val = $_GET["val"];
}
else{
$val = 0;
}
[/php]

値があればセットして、無ければ別の値をセット。この後、valがint型かどうかチェックして…というのがまた面倒くさい。

というわけで、色んなフレームワークに搭載されているのと同じような簡易ヘルパークラスを作りました。

データを簡単取得

Github: wgkoro/requestHelper

使い方:

[php]
// urlが http://aaa.bbb.com/?val=1 だったとして、「val」を取りたい。
$val = Http::get("val"); // => string("1")
$val2 = Http::get("val2"); // => null ※指定したkeyが存在しない場合はnullを返す

// 第2引数に、「パラメーターが存在しない場合」のデフォルト値をセットできます。
// 例: http://aaa.bbb.com/
$val = Http::get("val", "No value"); // => string("No value")

// Int型など、型変換が必要であれば第3引数に型名指定で変換。 ※デフォルトはString型に変換します
// 例: http://aaa.bbb.com/?val=111
$val = Http::get("val", 0, "int"); // => int(111)

// 変換に失敗した場合、デフォルト値を返します
// Example url: http://aaa.bbb.com/?val=abc
$val = Http::get("val", 0, "int"); // => int(0)
[/php]

第3引数に指定できる文字列は下記の通り。

  • str
  • string
  • int
  • integer
  • bool
  • boolean
  • array
  • object
  • unset

…PHPの型変換で可能なものをとりあえず全部つっこんでみましたw

メソッドはGETだけでなく、他にも色々作ってあります。

  • Http::get(key_name, default=null, cast_type=”string”) … $_GET
  • Http::post(key_name, default=null, cast_type=”string”) … $_POST
  • Http::request(key_name, default=null, cast_type=”string”) … $_REQUEST
  • Http::cookie(key_name, default=null, cast_type=”string”) … $_COOKIE
  • Env::session(key_name, default=null, cast_type=”string”) … $_SESSION
  • Env::server(key_name, default=null, cast_type=”string”) … $_SERVER

オマケとして、リクエストメソッド名を返すのもあります。

  • Http::method() … “GET”, “POST”, “PUT” …といったメソッド名を返します

使ってみるとやっぱり楽。pure-PHPのメンテナンスにお使いくださいませ〜。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください