PHP REQUEST_URI

新手上路,请多包涵

我有以下 php 脚本来读取 URL 中的请求:

 $id = '/' != ($_SERVER['REQUEST_URI']) ?
    str_replace('/?id=' ,"", $_SERVER['REQUEST_URI']) : 0;

当 URL 为 http://www.testing.com/?id=123 时使用

但现在我想在 url 字符串中再传递 1 个变量 http://www.testing.com/?id=123&othervar=123

我应该如何更改上面的代码以检索这两个变量?

原文由 user1118904 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 582
2 个回答

您可以使用正则表达式,也可以继续使用 str_replace

例如。

 $url = parse_url($_SERVER['REQUEST_URI']);

if ($url != '/') {
    parse_str($url['query']);
    echo $id;
    echo $othervar;
}

输出将是: http ://www.testing.com/123/123

原文由 nand 发布,翻译遵循 CC BY-SA 3.0 许可协议

我认为 parse_str 是您要找的东西,像这样的东西应该可以为您解决问题:

 parse_str($_SERVER['QUERY_STRING'], $vars);

然后 $vars 数组将保存所有传递的参数。

原文由 Oldskool 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题