勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPで配列をGETパラメータ化、GETパラメータを配列化する方法

   2024/05/22  PHP

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

  関連記事

PHP / MySQLで2038年問題の対策

先日打ち合わせの際に「タイムスタンプを使ってユニークキーに云々~~」といったよう ...

PHPにて「Fatal error: Uncaught Exception ~~」エラーの対応方法

PHPにてDatetimeクラスの呼び出し時にタイムスタンプを指定しようとすると ...

PHPにて特定の処理にかかった時間とメモリ使用量を測定する方法

PHPにて特定の処理にかかった時間とメモリ使用量を測定したい。以下にソースコード ...

フォームからアップロードした画像にPHPで任意のテキストを追加する方法

以前フォームから送られてきた画像に対してサイトロゴみたいなロゴ画像を追加する記事 ...

DTIのVPS(PHP5系環境)にCakePHPを導入する方法

他社さんと連携して仕事をする際に「フレームワーク何か使いますか?」と聞かれて「使 ...