勉強したことのメモ

webプログラマが勉強したことのメモ。

PHPでURLを解析してクエリを抽出する方法

   

formからGETでURLの文字列を送信したものを、受信した側でクエリ部分のみ抽出し、キーと値をそのまま連想配列に代入したかった。以下にその方法のメモ。

 

ソース

<?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);

 

テストした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"
}

 

 - PHP

  関連記事

PHPのswitch文で比較演算子の使用

switch文は指定の変数が、特定の値もしくは文字列 だった場合のみに使うような ...

セレクトメニューとテキストエリアの連動

やりたかった事は、 ・セレクトメニューで何れかを選択すると連動したテキストエリア ...

PHPで「Warning: date(): It is not safe to rely on the system's timezone settings.」のエラー

PHPでdate関数を使った際に、   Warning: date() ...

PHPで指定月の月末日を取得

今月の、だったらdate('t')でいくけど指定月の場合は どうしたらいいのか分 ...

SendGridを使ってメールサーバを構築せずにPHPからメールを送信する方法

メールサーバを構築せずに独自ドメインのメールアドレスにてメール送信を行いたい。過 ...

DTIのVPSにCodeigniterを導入する方法

DTIのVPSにPHPフレームワークのCodeigniterをインストールした。 ...

MySQLiでFOUND_ROWS(全件数取得)

MySQLiでFOUND_ROWS(全件数取得)。 $sql = ' SELEC ...

PHPでランダムな値を取得するケース諸々

テストデータを作成する際に、ランダムな値を入れたかったけど、 色々ケースがあった ...

PHPのshort_open_tagのデメリット

PHPをHTML内に書くときは、書く速さと見易さ重視で、   < ...

PHP7.4でAPCuとOPcacheをインストールする方法

先日本ブログのサーバをCentOS6系から7系に移行し、その際にMySQLのバー ...