1

我有这个网址:

example.com/?do=search&q=testing+this+out

我需要将 &q= 之后的部分存储在变量中。

什么 PHP 函数最适合这样做,爆炸,切片?

PS我$request_url = $_SERVER['REQUEST_URI'];用来获取URI。

4

4 回答 4

5

如果你只需要q的值,你可以简单地写:

$value = $_GET['q'];
于 2012-04-04T21:41:56.883 回答
4

parse_url()一个 url 分割成它的组件,然后parse_str()将一个查询字符串分解为一个常规的键值数组。

$url = 'your url here';
$parts = parse_url($url);
$query = parse_str($parts['query']);
echo $query['q'];
于 2012-04-04T21:42:15.143 回答
0

也许更快速,更简单......

$requested_query_vars = $_SERVER["QUERY_STRING"];

或 parse_url() php 函数

$requested_query_vars = parse_url($request_url, PHP_URL_QUERY); 
于 2012-04-04T21:58:39.707 回答
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
)
于 2012-04-04T21:43:57.660 回答