嘿,说我有一个网址只是通过我的PHP传递是否有任何简单的方法来获取通过它的一些GET变量?这不是页面的实际网址或任何内容。
就像一个包含
的字符串http://www.somesite.com/index.php?url=var&file_id=var&test=var
获取这些变量值的最佳方法是什么?
答案 0 :(得分:39)
parse_str(parse_url($url, PHP_URL_QUERY), $array)
,有关详细信息,请参阅manpage了解parse_str。
答案 1 :(得分:16)
$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
) */
答案 2 :(得分:4)
它实际上比编写任何自定义函数容易得多。
$ queryStr = $ _SERVER ['QUERY_STRING'];
答案 3 :(得分:0)
我会使用类似的东西:
preg_match_all('/(\?|&)([^=]+=[^&]*)/', $string , $matches);
然后
print_r($matches[2]);
/*
Array
(
[0] => url=var
[1] => file_id=var
[2] => test=var
)
*/
希望它有效.4。
答案 4 :(得分:-1)
快速谷歌“PHP GET”从w3schools给出了这个页面: