PHP - 只修改一个 GET 参数


PHP - Modify only one GET parameter

假设我有这个 URL - http://www.example.com/index.php?id=123&version=3&course=234&version=4,我只想更改一个参数而不使用 href "重置"公式。我该怎么做?

假设从上面的 URL 中,我想将id从 123 更改为 758。使用完整的网址我会做<a href="http://www.example.com/index.php?id=758&course=234&version=4">Change id</a>

现在假设我想将 URL 中的version从 4 更改为 5。我可以做些什么来保持 123 或 758 id而不使用 href 重置version而不会丢失其他参数?

解决此问题的简单方法是在末尾再次添加值。在 GET 调用 url 中,如果存在具有不同值的相同键,则始终采用最新的

http://www.example.com/index.php?id=758&course=234&version=4&id=123

解决此问题的最佳方法是使用 parse_url() 函数将查询作为键值对数组获取,并使用 http_build_query() 函数将其返回到 http 查询表单。