PHPで配列をGETパラメータ化、GETパラメータを配列化する方法
2024/05/22
PHPで配列を「name=hoge&id=1&pass=fdkn」のようにGETパラメータ化したい。また、逆にGETパラメータを配列化したい。以下に対応方法をメモ。
対応方法
配列をGETパラメータ化
$hoge = array('name'=>'hoge', 'id' => 1, 'pass' => 'fdkn');
echo http_build_query($hoge, '&'); //name=hoge&id=1&pass=fdkn
GETパラメータを配列化
$hoge = 'name=hoge&id=1&pass=fdkn';
parse_str($hoge, $query);
var_dump($query); //array(3) { ["name"]=> string(4) "hoge" ["id"]=> string(1) "1" ["pass"]=> string(4) "fdkn" }
リファレンス
http_build_query
https://www.php.net/manual/ja/function.http-build-query.php
parse_str
https://www.php.net/manual/ja/function.parse-str
使いどころ
file_get_contentsとかでGETパラメータを渡したい場合はこの方法をとった方が見やすくて、パラメータも書き換えやすい。
関連記事
-
-
PHPでファイルパスorフォルダパスの確認
PHPで画像とか触る際にフォルダのパス、ファイルのパスを 知りたいことがあったの ...
-
-
PHPからWebAPI(screendot)経由で他サイトのスクリーンショットを取得する方法
PHPで他サイトのスクリーンショットを取得したい。今回はライブラリは無しで実現し ...
-
-
PHPで日時比較時の注意
PHPで日時を比較する際にミスがあったのでメモ。 基本形は下記。 $limit_ ...
-
-
PHPでbool値(true / false)を文字列として出力する方法
PHPにてbool値(true / false)をechoで出力するとtrueは ...
-
-
php.iniを変更後にApacheを再起動しても反映されない場合の対応方法
先日AlmaLinux8系にChronyをインストールしてサーバの時刻同期を行っ ...