Ich mache das so:
Ich binde php-Skripte ein, die eine Liste von php-Konstanten definieren.
Bsp für dt:
<?php
language_device('welcomepage', 'Startseite');
language_device('towelcomepage', 'Zur Startseite');
language_device('administration', 'Administration');
language_device('user', 'Mitglieder');
language_device('youarehere', 'Sie sind hier');
language_device('recentlyvisited', 'Kürzlich besuchte Seiten');
language_device('backto', 'Zurück zu');
language_device('usethisrefresh', 'Bitte benutzen Sie nur diesen Refresh-Button und nicht den Ihres Browsers.');
?>
Beispiel für eng:
<?php
language_device('welcomepage', 'Homepage');
language_device('towelcomepage', 'To the homepage');
language_device('administration', 'Administration');
language_device('user', 'Members');
language_device('youarehere', 'You are here');
language_device('recentlyvisited', 'Recently visited pages');
language_device('backto', 'Back to');
language_device('usethisrefresh', 'Please use this refresh button instead of browser refresh.');
language_device('jumpnotpossible', 'We can't offer the link to that page here for security reasons. Please reach this page via the website navigation.');
language_device('loginbutton', 'Log in');
?>
(Nur Ausschnitte)
Wie man sieht, geschieht das aber nicht mit define() sondern language_device().
Hier diese Funktion:
function language_device($con, $val){
if(!defined("LANG_".$con)) define("LANG_".$con, $val);
}
Der Witz ist, dass ich so "Deutsch" laden kann und zur Sicherheit noch "Englisch". Sozusagen als Fallback, falls ich vergessen habe in deutsch entsprechende Bausteine zu definieren.
Im aufrufenden Skript steht dann sowas:
$LANG = "ger";
if($LANG == "eng"){
include(dirSYS."/_ini/_language/eng.php");
include(dirSYS."/_ini/_language/ger.php");
}
if($LANG == "ger"){
include(dirSYS."/_ini/_language/ger.php");
include(dirSYS."/_ini/_language/eng.php");
}
Verwenden kann ich dann evtl. Bausteine in jeder Funktion und Klasse / Methode mit
echo LANG_youarehere." <a href='index.php'>".LANG_welcomepage."</a>";
etc.
Gefällts?
Liebe Grüße,
LSpreee