在PHP应用程序中,$ _SERVER ['HTTP_REFERER']具有以下值:
http://www.google.com/aclk?sa=l&ai=CPWNSJV30TK{snip}&num=2&sig=AGiWqtxY{snip} &adurl=http://www.jumpfly.com&rct=j&q=adwords&cad=rja
我的问题是提取q值的正确方法是什么?
我应该搜索q的位置,然后搜索下一个&的位置,然后取它们之间的子串?这似乎有点不专业,因为如果有一天q是该查询字符串中的最后一个参数然后没有&之后。
谢谢。
答案 0 :(得分:21)
parse_str(parse_url($_SERVER['HTTP_REFERER'], PHP_URL_QUERY), $queries);
echo $queries['q'];
参考文献:
答案 1 :(得分:5)
试试这些:
parse_url()
:http://php.net/manual/en/function.parse-url.php。parse_str()
:http://www.php.net/manual/en/function.parse-str.php 答案 2 :(得分:1)
您可以使用parse_url()。从那里,将查询拆分为&
。