【问题标题】:PHP Get Values out of URL Query String without Key / Value pairsPHP从没有键/值对的URL查询字符串中获取值
【发布时间】:2011-07-14 21:41:50
【问题描述】:

我需要像这样从 URL 查询字符串中获取值:

http://exmaple.com/?xyz.123

并将它们分配给在 example.com 上运行的 index.php 中的变量,这样:

$name = xyz;
$number = 123;

如何编码?

谢谢!!

【问题讨论】:

  • 可以只从 $_SERVER["QUERY_STRING"] 获取查询值,然后用在您的示例中分隔两个值的句点来分解该值
  • 你的意思是?xyz=123 吗?这将形成一个键/值对,您可以使用 $_GET 访问它。

标签: php query-string


【解决方案1】:
list($name,$number) = explode('.',$_SERVER['QUERY_STRING']);

【讨论】:

    【解决方案2】:

    您可以使用以下内容对其进行解析,尽管它已经适合注入,除非您之后执行一些验证/清理:

    list($name, $number) = explode('.', $_SERVER['QUERY_STRING']);

    【讨论】:

      【解决方案3】:

      你想做的就是看看$_SERVER['QUERY_STRING']。通过. 分解查询字符串以获取值数组。然后,您可以设置适当的变量。请记住,您可能还需要对数据进行一些验证,以确保其格式符合您的要求。

      【讨论】:

        【解决方案4】:

        您需要先像这样设置一个 mod_rewrite 规则(未经测试)...

        RewriteRule ^([a-zA-Z]+)\.([0-9]+)$ index.php?name=$1&number=$2
        

        然后你可以在 PHP 中将它们从$_GET 中提取出来。

        【讨论】:

          猜你喜欢
          • 2012-04-24
          • 1970-01-01
          • 2020-06-12
          • 1970-01-01
          • 1970-01-01
          • 2015-11-21
          • 1970-01-01
          • 1970-01-01
          • 2018-01-25
          相关资源
          最近更新 更多