Ottenuto questa funzione per ammendare la stringa di query e si chiedeva quale fosse la parte di sostituzione del pre_replace (cioè - $ 1 $ 2 $ 4).
function add_querystring_var($url, $key, $value) {
$url = preg_replace('/(.*)(\?|&)' . $key . '=[^&]+?(&)(.*)/i', '$1$2$4', $url . '&');
$url = substr($url, 0, -1);
if (strpos($url, '?') === false) {
return ($url . '?' . $key . '=' . $value);
} else {
return ($url . '&' . $key . '=' . $value);
}
}
Non troppo familiare con le espressioni regolari. Ottengo le varie parti per preg_replace ma non al 100% circa l'uso di '$ 1 $ 2 $ 4' nella parte di ricambio.
che ora ha molto più senso. In modo che preg_replace rimuoverà fondamentalmente la corrispondenza $ chiave da $ url. – Taylor