提取与$ _GET结果相同的URL字符串

时间:2011-10-15 05:20:23

标签: php string get

好的,所以我有一个像这样的字符串:

index.php?page=test2;sa=blah

我只需要使用$_GET['page']获取返回的内容,因此在这种情况下它会返回test2。但页面必须在index.php?之后直接定义,然后才能返回实际的字符串。我该怎么做呢?我只需要从页面变量的$ _GET返回相同的结果。我也可以这样:

index.php?page=blah

应该返回blah

或者这个:

index.php?page=anything&sa=blah

返回anything

或者这个:

index.php?action=blah;page=2

返回空字符串,因为这不是在index.php?

之后

或基本上是任何网址,但只有在index.php?之后才需要抓取页面变量(如果存在)。有时页面可能根本不存在,在这种情况下,应该返回一个空字符串。

我该怎么做?我没有浏览浏览器中的URL,因此,不要认为$ _GET会起作用,但它需要模拟并返回$ _GET将在浏览器中返回的完全相同的结果,但仅限于page是在index.php?

之后直接定义的

3 个答案:

答案 0 :(得分:3)

parse_urlparse_str是您的朋友。

答案 1 :(得分:2)

请使用以下代码:

function get($name, $url) {
   $src = parse_url($url);
   $src = $src['query'];
   parse_str($src, $tag);
   return $tag[$name];
}

答案 2 :(得分:0)

您可以检查$ _GET收到的元素是否与您通过比较或简单的if语句所期望的相等。如果没有,则处理该字符串以找到它(如果需要)。也许还使用elemnt的索引来确定是否进程。