Kai: n Sprachen verwalten

Beitrag lesen

Du schreibst nicht, ob die Seiten relativ unverändert bleiben oder sich laufend ändern, also von daher eine DB erfordern.

Na ja, ein paar dynamische Inhalte wird sie haben, aber das textliche Grundgerüst wird statisch sein.

Problematik: Bei Änderungen/Ergänzungen in einer Sprache müssen alle anderen mitgezogen werden. Deshalb sollten die verschiedenen Sprachen im Quellcode absatz- oder kapitelweise nahe beieinander bleiben.

Ist bei mir nicht so gravierend (s. u.)

Zwei bis drei Sprachen könnte man spaltenweise nebeneinander anzeigen, das sieht recht vernünftig aus:

deutsch              english              francais


Bei mehr Sprachen wird diese Darstellung aber unübersichtlich und PHP sollte die Sprache ausfiltern:

<?PHP
  if ( $n == 'dt' ) {
?>
deutsch

<?PHP
  } else if ( $n == 'en' ) {
?>
english

<?PHP
  } else if ( $n == 'fr' ) {
?>
francais

<?PHP
  }
?>

Bei mir sieht das momentan so aus:

keyValue         de               en               fr
-------------    -------------    --------------   -------------
dictionaryHello  hallo            hello            salut
dictionaryName   Name             name             nom

usw. Den keyValue und die aktive Sprache in der Session lege ich dann in ein Array. Im Smarty Template frage ich dann nach dem keyValue und lasse mir den Wert dazu ausgeben. Funktioniert schon ganz gut, meine Hauptsorge ist halt die Performance, wenn die DB mal richtig groß wird. Ich frage SELECT keyValue, de FROM ab und das kann halt irgendwann mal mächtig viel werden, da ich mit meiner derzeitigen Templatelösung keine limitierten Abfragen machen kann. Und wenn doch, dann wären es etliche Einzelabfragen, ich denke, ein großes Array ist schneller.

Jedenfalls danke für Deine Meinung, DB scheint wirklich die angenehmste Lösung zu sein.

Grüße

Kai