PHPでURLを解析してクエリ(GETパラメータ)を抽出する方法
2024/02/25
formからGETで送信したクエリ(パラメータ)を、受信した側で抽出し、キーと値をそのまま連想配列に代入したかった。例えば「?param=1&name=hoge」の場合は「key:param / value:1」「key:name / value:hoge」のような形で抽出したい。以下にその方法のメモ。
ソース
<?php if( !$_GET['url'] ){ echo 'empty url'; exit(); } $query_array = array(); $query_string = (parse_url($_GET['url'], PHP_URL_QUERY)); //URLを解析してクエリパラメータを抽出 parse_str($query_string, $query_array); //文字列を処理し、変数に代入 var_dump($query_array);
parse_urlでURLを解析してクエリパラメータを抽出、parse_strで文字列を処理し変数に代入という形になる。
テストしたURLと結果
http://hoge.com/hoge.php?name=名前&pass=kmsdkafd&id=516516
というURLをテストで送信した。var_dumpの結果は以下の通り。
array(3) { ["name"]=> string(4) "名前" ["pass"]=> string(8) "kmsdkafd" ["id"]=> string(6) "516516" }
関連記事
-
-
mp3ファイルのアップロードと再生方法
mp3ファイルをformでアップロードしたかったのと、Webサイト上で再生したか ...
-
-
PHPでJavaScriptを圧縮するライブラリ「JShrink」の利用方法
サイト内でJavaScriptを用いる場合、外部のライブラリやプラグインだと圧縮 ...
-
-
MySQLで重複を除く
ユニークな値を取り出したいときに使う。 DISTINCT(ディスティンクト) S ...
-
-
CodeIgniter4の各種設定項目のまとめ記事
CodeIgniter4.4.4の各種設定項目を後から確認できるようまとめておき ...
-
-
PHPでお問い合わせ等のform構築時にCSRF対策を行う方法
他社が制作されたお問い合わせフォームを改修する案件があった。ソースコードを拝見し ...