Hallo,
ich habe eine Datei (index.php) die ganz grob so aussieht:
Code:
<?php
function parse()
{
// ...
}
if (parse())
{
header('Location: index.php');
exit;
}
?>
Die Funktion
parse() parst Dateien, die in einem Verzeichnis liegen. Wenn eine Datei erfolgreich geparst wurde, wird der geparste Inhalt gespeichert. Dann wird die
index.php erneut aufgerufen.
Beim Versuch, die gleiche Datei erneut zu parsen, wird geprüft, ob diese bereits existiert. Ist das der Fall, gibt die Funktion
parse() "false" zurück und die nächste Datei im Verzeichnis wird geparst. Das geht theoretisch so lange, bis alle Dateien geparst sind.
Leider nur theoretisch. Nach rund 10-15 Dateien meldet Firefox einen Umleitungsfehler: "Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann."
Drücke ich F5, dann läuft das Skript einwandfrei weiter und parst die nächsten 10-15 Dateien bis zum nächsten Umleitungsfehler.
Wieso kommt es denn zu einer (Endlos-)Umleitungsschleife oder was mit FF damit sagen möchte?
Edit: Es handelt sich übrigens um eine Klasse und da rufe ich das innerhalb einer Methode auf. Es ist natürlich unschön, eine Klasse bzw. Methode so zu verlassen, aber das sollte erstmal keine Rolle spielen und das werde ich auch noch ändern.
Grüße, Matze