【问题标题】:How to parse multiple GET parameters into URL if one unsets another?如果一个未设置另一个,如何将多个 GET 参数解析为 URL?
【发布时间】:2016-10-06 05:03:29
【问题描述】:

假设我将有一个网页“abcde.com”,其中包含两个提交按钮:“Set GET 1”和“Set GET 2”。
“Set GET 1”按钮将用户重定向到 abcde.com ?第一=x。 “Set GET 2”按钮将用户重定向到 abcde.com?second=x。
两者都使用 PHP 的 ('Location: ?first=') 和 ('Location: ?second=')。

如果用户点击 Set GET 1,将在 URL 中设置 GET 参数。但是,如果用户在设置第一个 GET 参数后立即单击 Set GET 2,则该按钮会将他重定向到第二个参数,从而从 URL 中删除第一个参数。

不写if (isset($_GET["first"])) { ('Location: ?first=x&?second=x') },PHP中是否可以实现设置多个GET参数在URL除以&?
我的意思是,所以它可以添加 & 并设置另一个参数而不删除前一个参数?即使我知道 PHP 将用户重定向到 URL 而没有先前的 GET 参数。

【问题讨论】:

    标签: php url parameters get


    【解决方案1】:

    使用$_GET 将当前查询字符串存储在一个数组中,将您的值附加到其中,然后使用http_build_query 构建新的查询字符串:

    $queryArray = $_GET;
    $queryArray['second']='x';
    $urlWithQueryString = 'http://example.com/somepage/?' . http_build_query($queryArray);
    
    header('Location:'.$urlWithQueryString);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 2014-04-17
      • 1970-01-01
      • 1970-01-01
      • 2021-12-09
      • 1970-01-01
      相关资源
      最近更新 更多