Hallo Patrick,
Nein. Die Datei wird zur Laufzeit nur einmal eingebunden. Wenn deine Seite im Browser vollständig geladen ist, ist auch die Laufzeit von PHP beendet. Wenn du dann "auf eine neue Seite gehst" interessiert PHP nicht, was davor war. Um genau zu sein weiss PHP das gar nicht mehr. Der Parser fängt wieder bei null an.
OK, habe ich verstanden. Dann bezieht sich das ganze also nur auf diese eine Datei. Benötige ich dann include_once nur, wenn in einer php-Datei mehrere includes vorhanden sind und ich vermeiden will, dass die über inclue_once includierte Datei zwei mal in dieser einen php-Datei includiert wird?
Was passiert dann eigentlich wenn der Anwender die Sprache ändert? Dann müsste doch eigentlich die neue Sprachdatei eingefügt werden, oder?
Wenn du das so implementierst, ja. Von Geisterhand jedenfalls nicht
Also müsste ich dann bei der erstmaligen Auswahl der Sprache diese in die Session schreiben, in jeder php-Datei prüfen ob der User inzwischen eine neue Sprache ausgewählt hat,
- wenn ja muss ich den Session Wert für die Sprache aktualisieren und die neue Sprachdatei includieren,
- wenn nein hole ich die Sprache aus der Session und includiere die zugehörige Sprachdatei .
Ist das richtig?
Sorry, das sind wahrscheinlich Anfängerfragen, aber ich bin auf dem Gebiet auch noch Anfänger.
Noch ne Frage nebenbei:
Wie findest Du den Vorschlag von Jeena Paradies bezüglich den Sprachdateien?
Hier ihr Beispiel:
-------------------
<?php
// Datei mit dem Namen language.de.php
$language = array(
'hello_world' => 'Hallo Welt',
'its_me' => 'Ich bin es!',
);
?>
-------------------
<?php
// Datei mit dem Namen language.en.php
$language = array(
'hello_world' => 'Hello World',
'its_me' => "It's me!",
);
?>
Was ist performanter? Die Textbausteine in einem Array zu halten oder für jeden Textbaustein eine eigene Variable deklarieren?
Ich als Laie finde den Vorschlag von Jeena eigentlich ganz gut.
Liebe Grüße
Andrea