PHP - 只修改一个GET参数

PHP - Modify only one GET parameter

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

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

现在假设我想将 URL 中的 version 从 4 更改为 5。我该怎么做才能在不使用 href 重置 version 的情况下保持 id 为 123 或 758 而不会丢失其他参数?

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

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

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