Windowsソフト、iPhoneアプリ、ゲーム音楽素材の「Meteoric Stream」 -> 資料室 -> PHP&MySQL -> htaccessのRewriteでGETパラメータを無理やり引き継ぐPHPコード

htaccessのRewriteでGETパラメータを無理やり引き継ぐPHPコード

.htaccessで、Rewrite Ruleを使っている場合、通常は以下のようにhtaccess内に記述する事で、「?以降」の文字列を「$_GET」に代入させる事ができるようになります。

RewriteEngine on RewriteBase / RewriteCond %{QUERY_STRING} (.*)$ RewriteRule ^/test/$ /test.php?%1
・・・でも、何らかの事情で、.htaccessをこれ以上使えないとか、いじくり回したくない場合、別の方法でGETパラメータを無理やり引き継がせる必要に迫られます。 というわけで、PHPコードでなんとかする事にしましたw
function parse_query_string($allow_list = array()){ $req = $_SERVER["REQUEST_URI"]; if(strpos($req, "?") !== FALSE){ list($req, $query_strings) = explode("?", $req); $query_strings = explode("&", $query_strings); foreach($query_strings as $query_string){ list($key, $value) = explode("=", $query_string); if(in_array($key, (array)$allow_list)){$_GET[$key] = urldecode($value);} } } }
使い方: parse_query_string(array("page", "max")); 上記の例では、$_GET["page"]、$_GET["max"]のみ、$_GETパラメータを引き継がせる事ができるようになります。

この記事の最終更新日:2019/09/02
最初に記事を書いた日:2019/09/02

この記事をシェアする

このエントリーをはてなブックマークに追加
縺雁ー城▲縺遞シ縺弱↑繧峨昴う繝ウ繝医し繧、繝GetMoney!

関連記事

資料室のトップに戻る
Windowsソフト、iPhoneアプリ、ゲーム音楽素材の「Meteoric Stream」 -> 資料室 -> PHP&MySQL -> htaccessのRewriteでGETパラメータを無理やり引き継ぐPHPコード
▲Top English