我有这个网址:
example.com/?do=search&q=testing+this+out
我需要将& q =之后的部分存储在变量中。
哪种PHP功能最适合这样做,爆炸,切片?
P.S。我使用$request_url = $_SERVER['REQUEST_URI'];
来获取URI。
答案 0 :(得分:5)
如果你只需要q的值,你可以简单地写:
$value = $_GET['q'];
答案 1 :(得分:4)
将parse_url()
切成一个url到其组件中,然后parse_str()
将获取一个查询字符串并将其分解为常规键值数组。
$url = 'your url here';
$parts = parse_url($url);
$query = parse_str($parts['query']);
echo $query['q'];
答案 2 :(得分:0)
我不明白为什么$ _GET是不够的。但是,这不是,在这里:
$ php -r '$url = "http://example.com/?do=search&q=testing+this+out"; $parts = parse_url($url); $vars = explode("&", $parts["query"]); print_r($vars);'
Array
(
[0] => do=search
[1] => q=testing+this+out
)
答案 3 :(得分:0)
$requested_query_vars = $_SERVER["QUERY_STRING"];
或parse_url()php函数
$requested_query_vars = parse_url($request_url, PHP_URL_QUERY);