有值的网址 - 没有参数? (获取请求)

时间:2011-09-21 10:18:33

标签: php http url

我可能完全偏离基础,但我很确定我之前看到过像这样的网址:

http://www.example.com/dir/?=1没有传递可见参数,但是给出了一个值。

如果这是一个有效的url结构,那么如何在PHP中获取参数值1

4 个答案:

答案 0 :(得分:4)

$_GET无法使用此值。我只在$_SERVER["QUERY_STRING"]$_SERVER["REQUEST_URI"]中找到了它。所以我假设您必须自己解析这些变量。

答案 1 :(得分:3)

这是我用来阅读此类URL的快速而脏的功能

function get_url_params() {
    $param_count = 0;
    $params = array();
    foreach (explode('&', $_SERVER['QUERY_STRING']) as $param) {
        $param = explode('=', $param);

        if ($param[0] == '') {
            $params[$param_count] = $param[1];
        } else {
            $params[$param[0]] = $param[1];
        }

        $param_count++;
    }
    return $params;
}

print_r(get_url_params());

答案 2 :(得分:1)

您可以手动过滤$_SERVER["QUERY_STRING"]documentation)中的变量,该变量应为=1

答案 3 :(得分:0)

最有可能使用重写规则.htaccess文件。这会将请求字符串转换为脚本期望的站点。

在此网站上搜索重写引擎,重写规则和/或.htaccess将获得有关此主题的大量信息。