URL-String durchlaufen und doppelte Slashes entfernen

ahykes

Erfahrenes Mitglied
Guten Morgen!
Es ist noch früh und ich finde den Fehler in meinem "Script" nicht. Hier erstmal der Wahnsinnscode:
PHP:
<?
	$url = "//blag.domcdfbkb/dfklnsdfoonbgl////////dnndmfivmgghm///djbhsfezuv/dflknfiornn/läksdnjsdbnfjkösd fknsdbf////";
	$i = 0;
	while(preg_match("//",$url)) { 
		$url = ereg_replace("//","/",$url);
		$i++;
		echo $i.' mal durchlaufen'.'<br>';
	}
	echo $url;	
?>
Das Script soll einfach hingehen und die doppelten Slashes entfernen....leider stürzt dabei der Browser ab :-( Tippe mal auf eine unendliche Schleife...aber warum? :suspekt:
 
Kannst du das nicht so ändern, dass die Schleife nur solange durchläuft, bis das Ende der Url erreicht ist? Und dann einfach ein if dazu tun? Ist zwar länger und so, aber doch auch sicherer;)
 
okay! Dann sähe das also so aus:
PHP:
<?
	$url = "//blag.domcdfbkb/dfklnsdfoonbgl////////dnndmfivmgghm///djbhsfezuv/dflknfiornn/läksdnjsdbnfjkösd fknsdbf////";
	for($y=0; $y<=strlen($url); $y++){
		if(preg_match("//",$url)) { 
			$url = ereg_replace("//","/",$url);
		}
	}
	echo $url;	
?>
Das funktioniert auch! :-) Vielen Dank!
 
Zurück