So ich steh mal wieder auf meiner Leitung und brauche Hilfe.
Ich habe in meinem Templatesystem eine Funktion, welche mir Sprachvariablen ersetzen soll. Hierzu definiere ich folgendes Array:
Meine Funktion zum ersetzen sieht nun so aus:
Steht in meinem Template nun irgendwo {L_variable} wird dies durch Inhalt ersetzt. Hierbei wird über die regexp das "variable" gesucht und als Index für mein Array eingesetzt um den richtigen Inhalt zu finden.
Klappt soweit auch alles.
Mein Problem ist jetzt:
Wenn ich eine Variable im Template definiert habe, die ich nicht im Array definiert habe, bekomme ich folgenden Fehler:
Ist ja auch logisch...
Ich muss also irgendwie abfangen, dass er versucht Variablen zu ersetzen die noch nicht im Array stehen. Ich weiß nur nicht wie... Kann mir mal bitte jemand nen Denkanstoß geben?
Ich habe in meinem Templatesystem eine Funktion, welche mir Sprachvariablen ersetzen soll. Hierzu definiere ich folgendes Array:
PHP:
$lang['Variable'] = 'Inhalt';
$lang['hier'] = 'ersetzen';
PHP:
private function replaceLangVars($lang) {
$this->template = preg_replace("/\{L_(.*)\}/isUe", "\$lang[strtolower('\\1')]", $this->template);
}
Klappt soweit auch alles.
Mein Problem ist jetzt:
Wenn ich eine Variable im Template definiert habe, die ich nicht im Array definiert habe, bekomme ich folgenden Fehler:
Code:
[b]Notice[/b]: Undefined index: fehler in [b]\template.class.php(227) : regexp code[/b] on line [b]1[/b]
Ich muss also irgendwie abfangen, dass er versucht Variablen zu ersetzen die noch nicht im Array stehen. Ich weiß nur nicht wie... Kann mir mal bitte jemand nen Denkanstoß geben?