[PHP] URLパラメータ(クエリ)の分解と構築方法

フォームやリンクでGETやPOSTを使っていると、受け取ったデータをURL形式にしたり、配列データにしたり、必要に応じて変換させる必要が出てきます。

PHPにはGET形式の ?id=5&user=2 を配列に変換したり、配列からGET形式のURLを作成したりする便利な関数が用意されています。

配列に変換

元となる文字列
$url='id=1&user=3&page=5';

配列に変換するにはparse_strを使います。

書式
parse_str ($url,$output);

第一引数に元の文字列(パラメタ)を設定。第二引数には配列が格納される変数を用意します。

pr($output);
Array
(
    [id] => 1
    [user] => 3
    [page] => 5
)

文字列に変換

今度は配列に代入したパラメタを元のURL形式に戻してみます。

書式
$str=http_build_query($output);

こちらは http_build_queryメソッドに配列の入った変数を指定するだけです。

pr($str);
id=1&user=3&page=5


Author: webmaster