A
adlershof
Hallo Tutorials-Community,
ich arbeite an einer multilingualen Webseite (Deutsch und Englisch) und habe ein Problem bei meiner TemplateEngine. Mit der neusten PHP Version wird mir angezeigt, dass der Modifikator /e veraltet ist und nicht mehr genutzt werden soll. Nun bin ich dabei, dass umzuprogrammieren. Zurzeit nutze ich eine andere Variante, die mir allerdings mehr arbeit verschaft.
Alte Version
Neue Version
Mit der neuen Version wird mir als Beispiel nur {l_home} auf der Seite ausgegeben, aber nicht Startseite für {l_home}. Wie bekomme ich es wieder hin, dass mir Startseite [de] / Home [en] für {l_home} angezeigt wird?
ich arbeite an einer multilingualen Webseite (Deutsch und Englisch) und habe ein Problem bei meiner TemplateEngine. Mit der neusten PHP Version wird mir angezeigt, dass der Modifikator /e veraltet ist und nicht mehr genutzt werden soll. Nun bin ich dabei, dass umzuprogrammieren. Zurzeit nutze ich eine andere Variante, die mir allerdings mehr arbeit verschaft.
Alte Version
PHP:
public function languageSet() {
global $languages;
$this->template = preg_replace("/\{l_(.*)\}/isUe", "\$languages[strtolower('\\1')]", $this->template);
return $languages;
}
Neue Version
PHP:
public function languageSet() {
global $languages;
$this->template = preg_replace_callback("/\{l_(.*)\}/", create_function('$languages', 'return $languages[0];'), $this->template);
return $languages;
}
Mit der neuen Version wird mir als Beispiel nur {l_home} auf der Seite ausgegeben, aber nicht Startseite für {l_home}. Wie bekomme ich es wieder hin, dass mir Startseite [de] / Home [en] für {l_home} angezeigt wird?