How can the issue of continuously adding URL parameters be resolved in PHP?

Issue: Continuously adding URL parameters in PHP can lead to long and messy URLs. To resolve this, we can check if the parameter already exists in the URL and update its value instead of continuously adding new parameters.

// Check if the parameter already exists in the URL and update its value
function addOrUpdateUrlParameter($url, $paramKey, $paramValue) {
    $parsedUrl = parse_url($url);
    parse_str($parsedUrl['query'], $params);

    if (array_key_exists($paramKey, $params)) {
        $params[$paramKey] = $paramValue;
    } else {
        $params[$paramKey] = $paramValue;
    }

    $parsedUrl['query'] = http_build_query($params);
    $newUrl = $parsedUrl['scheme'] . '://' . $parsedUrl['host'] . $parsedUrl['path'] . '?' . $parsedUrl['query'];

    return $newUrl;
}

// Example usage
$url = "http://example.com/page?param1=value1";
$newUrl = addOrUpdateUrlParameter($url, "param1", "updatedValue");
echo $newUrl;