ねえ、私はちょうど私のphpを通過しているURLを持っていると言いますそれを通過しているいくつかのGET変数を取得する簡単な方法はありますか?ページの実際のURLなどではありません。
のような文字列を含む
http://www.somesite.com/index.php?url=var&file_id=var&test=var
それらの変数の値を取得するための最良の方法は何ですか?
parse_str(parse_url($url, PHP_URL_QUERY), $array)
、詳細については、parse_strの manpage を参照してください。
$href = 'http://www.somesite.com/index.php?url=var&file_id=var&test=var';
$url = parse_url($href);
print_r($url);
/* Array
(
[scheme] => http
[Host] => www.somesite.com
[path] => /index.php
[query] => url=var&file_id=var&test=var
) */
$query = array();
parse_str($url['query'], $query);
print_r($query);
/* Array
(
[url] => var
[file_id] => var
[test] => var
) */
実際には、カスタム関数を作成するよりもはるかに簡単です。
$ queryStr = $ _SERVER ['QUERY_STRING'];
私は次のようなものを使用します:
preg_match_all('/(\?|&)([^=]+=[^&]*)/', $string , $matches);
その後
print_r($matches[2]);
/*
Array
(
[0] => url=var
[1] => file_id=var
[2] => test=var
)
*/
それが4uで動作することを願っています。