PHP 配列をURL用のgetパラメータ作成(http_build_query()、parse_str())
「hoge=1&foo=abc」みたいなヤツを作りたい
作成日:2022-09-22, 更新日:2024-02-05
基本
「http_build_query()」を使う
$prms_many = array( hoge => 1, foo => 'abc', ); $str_prms = http_build_query($prms_many); // 「hoge=1&foo=abc」ができる $url = 'http://example.com/hoge.php?' . $str_prms; // 「http_build_query()」で「?」は作られないので必要
「hoge=1&foo=abc」みたいなヤツを配列に戻したい
「parse_str()」を使う
$str_prms = 'hoge=1&foo=abc'; parse_str($str_prms, $prms_many); // 第2引数が返値になる。無ければキーの変数が作られるみたい var_dump($prms_many);
URLから取得
$url = "http://example.com/hoge/foo?a=b&c=d"; $parsed_url = parse_url($url); $query_str = $parsed_url['query']; parse_str($query_str, $prms_many); var_dump($prms_many);