Auch ohne Gruß
Seit den 1980er Jahren beschäftige ich mich mit multilingualem Programmieren (das war noch vor dem Internet). Damals (unter Cobol) waren Programmcode und angezeigter Bildschirm-Inhalt noch in einer Datei. Fast jedes Schrauben an der Oberfläche brachte Programmfehler mit sich (was schief gehen kann, geht irgendwann schief).
Für ein großes Kundenprojekt und meinen Web-Veranstaltungskalender, von der Pike an selbst programmiert, habe ich vor 13 Jahren eine Lösung gefunden, die ich noch nicht bereut habe.
Jedes Programm besteht aus einer .php - und einer .html - Datei. PHP bereitet die wechselnden Daten auf und übergibt sie als Array dem Unterprogramm display.php, das seinerseits die .html-Datei liest, die dortigen Platzhalter füllt und an den Browser sendet.
Dieses Unterprogramm erkennt auch, alternative Sprach-Konstrukte in der Form ###deutsch###english###nederlands###
, erzeugt daraus ein Array und ersetzt das Konstrukt durch $arr[0] im Fall deutsch. Zu Beginn gab es noch französisch und polnisch, aber von dort kamen keine Interessenten.
Das System geht noch weiter. Da in vielen Programmen gleichartige input-Felder benötigt werden, trage ich in der .html-Datei nur noch ein
[feld_anred]
[feld_titel]
[feld_vname]
[feld_nname_required]
[feld_submit_aen]
display.php liest die Datei /felder/feld_anred.htm, setzt den Inhalt anstelle des Aufrufs und erst danach wird die Sprache ausgewertet:
<p><l>###Anrede###Salutation###Aanhef###</l>
<input [disabled]
type = 'text'
name = 'anred'
title = 'anred'
maxlength = 10
size = 10
value = '[anred]'
placeholder = "Herr Mr. Dhr."
/></p>