Löschen von einzelnen Variablen aus URLs

Als ich mir heute einen eigenen Referer-Logger zusammengefummelt habe, suchte ich nach einer Möglichkeit, einzelne Variablen aus URLs löschen zu können. Google ist beispielsweise für Konstrukte wie http://www.google.nl/search?q=Joachim+Fest+Ich+nicht&hl=nl&start=50&sa=N bekannt. Das kann ich zwar schön speichern, aber wenn nun jemand mit dem Referer http://www.google.nl/search?q=Joachim+Fest+Ich+nicht&hl=nl&start=10 die Seite betritt, würde dies als neuer Eintrag gespeichert werden, obwohl mich gerade bei Google nicht juckt, über welche Unterseite mit welchem kryptischen Parameterwust ein Besucher meine Seite gefunden hat. Also habe ich da mal was gestrickt. Die Funktion deleteFromURL bekommt eine URL und ein Array zu löschender Variablen eingetrichtert und liefert die bereinigte URL. So wird aus obigem Beispiel, mit dem richtigen Array, die bereinigte URL http://www.google.nl/search?q=Joachim+Fest+Ich+nicht.

function deleteFromURL ( $url, $queriesToDelete ) {
	$parsedURL = parse_url ( $url );
	parse_str ( $parsedURL['query'], $parsedQuery );
	foreach ( $queriesToDelete as $single ) {
		if ( isset ( $parsedQuery[$single] ) ) {
			unset ( $parsedQuery[$single] );
		}
	}
	$url = $parsedURL['scheme'] . '://'
	 . $parsedURL['host']
	 . $parsedURL['path'] . '?'
	 . http_build_query ( $parsedQuery );
	return $url;
}