Tom: Variable in Liste nachträglich ändern im Betrieb der Seite

Beitrag lesen

Hello,

Beim Laden meiner Seite lade ich ganz am Anfang meine Sprachausgabe
Beispiel (Inhalt der Sprachausgabe:

$TEXT['titel'] = "Homepage";
$TEXT['untertitel'] = "Testen und Staunen";
$TEXT['gehtnicht']      =“das Ergebniss „.$ergebnis.“ ist falsch“;

Wenn dann eine Ausgabe erfolgt wird diese mir echo $TEXT['titel'] vollzogen. Soweit so gut, jetzt habe ich aber ein Problem und zwar wenn aktuelle Daten in die Staren Daten der Sprachdatei mit eingebunden werden sollen.

Ich gehe so vor…

Ich lade die Sprachausgabe
Dann vollziehe ich eine Rechnung, das Ergebnis steht in $ergebnis.
Nun möchte ich sie ausgaben mit $TEXT['gehtnicht'], was ja klar ist, weil wenn am Anfang die Sprachdatei geladen wird ist die Variable $ergebnis noch nicht gefüllt. Wie bekomme ich es also hin das die Sprachdatei Variable gefüllt ist?

Das was Du suchst, nennt sich "Templatetechnik", hier allerdings etwas komplexer, weil das Template selber noch nicht zusammengebaut ist, sondern seine Komponenten noch im Array $TEXT verpackt sind.

Es kommt dann später also auf die Reihenfolge der Ersetzungen an.

$TEXT['titel'] = "##OWNER##Homepage";
 $TEXT['untertitel'] = "Testen und Staunen";
 $TEXT['gehtnicht']     = "das Ergebnis##ERGEBNIS## ist falsch";

$ergebnis = '7*3';       ## dynamische Ersetzung berechnen

$_replace['##OWNER']      = 'Kathi's ';   # statische Ersetzung
 $_replace['##ERGEBNIS##'] = " $ergebnis";  # dynamische Ersetzung, muss vorher bekannt sein

foreach($TEXT as $key => $val)
 {
    $TEXT[$key] = str_replace($array_keys($_replace), array_values($_replace), $val);
 }

echo_template($TEXT);    ## und in dieser Funktion ird dann das Array $TEXT ausgegeben

Was passiert?
Das gesamte Array $TEXT wird linear iteriert und jedes Element von str_replace() nach allen Ersetzungsplatzhaltern durchsucht. Diese werden dann durch die Ersetzungen ausgetauscht.

Schau dir die Beschreibungen zu den Funktionen an.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de