Beim Ausführen des folgenden Skripts hängt sich aber der Server auf.
- Code: Select all
<?php
function setLanguage() {
@require "config.php";
// Sprachverzeichnis auslesen und Datei-Erweiterungen in einem Array speichern
$dir = opendir(languagedir);
while ($file = readdir($dir)) {
if ($file != "." && $file != "..") {
$languages = substr($file, 9); // die Dateien heißen language.en usw.
}
}
closedir($dir);
// Browsersprache auslesen
$language = defaultlanguage; // Sprache auf defaultlanguage setzen
if(isset($_SERVER["HTTP_ACCEPT_LANGUAGE"])) { // Falls HTTP_ACCEPT_LANGUAGE existiert
while($languages) { // Array $languages durchlaufen
if (strstr($_SERVER["HTTP_ACCEPT_LANGUAGE"],$languages)) { // installierte Sprachen mit HTTP_ACCEPT_LANGUAGE vergleichen
$language = $languages; // falls gefunden Sprache auf detektierte Sprache setzen
}
}
}
return $language; // Sprache zurückgeben
}
echo setLanguage(); // nur drin, um die Funktion zu testen
?>
Die config.php enthält nur die notwendigen Definitionen für die Variablen und Konstanten. Das Verzeichnis mit den Sprachdateien ist in der Konstanten languagedir festgelegt, existiert und hat auch ein paar Dateien drin. Auch sonst sollten eigentlich keine Fehler auftreten.
Wenn ich die Datei auf dem Webserver meines Webspace-Providers ausführe gibt es keinerlei Probleme, mit XAMPP als localhost führt der Aufruf dazu, dass der Server nicht mehr reagiert. Einzige Abhilfe ist ein Neustart des Services.
Woran liegts, wie kann ich es beheben? Danke [/code]