[REGEX] $1 als Key für Array verwenden

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [REGEX] $1 als Key für Array verwenden

    hallo,
    ich möchte in meinem Templatesystem automatisch die Sprachblöcke durch den entsprechenden Text ersetzen.
    Mein Spracharray
    PHP-Code:
    $_language['username'] = 'Benutzername';
    $_language['password'] = 'Passwort';
    $_language['loginbutton'] = 'Login';
    $_language['loginerror'] = 'Benutzername oder Password falsch!'
    In meinem Templatesystem möchte ich nun mit einem Regulären-Ausdruck alle Sprachblöcke (Aufbau des Sprachblocks: {language:username}) ersetzen.
    PHP-Code:
    $string preg_replace("/\\{language:(.*?)\\}/s""$this->language['$1']"$string); 
    Leider funktioniert das Ganze nicht. Auch unter Verwendung des e Modifikators habe ich es nicht zum Laufen bekommen.
    Weiß einer wie das funktioniert?

    PS: lasst euch nicht von $this->language, so heißt der Array in meiner Klasse der die Werte von $_language enthält.
    Sunshine CMS
    BannerAdManagement
    Borlabs - because we make IT easier
    Formulargenerator [color=red]Neu![/color]
    Herkunftsstatistik [color=red]Neu![/color]

  • #2
    Code:
    $string = preg_replace(
       "/\{language:(.*?)\}/se", 
       "\$this->language['\\1']", 
       $string);
    mal testen
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #3
      Also direkt mit preg_replace wirste das ohne weiteres wohl nicht hinkriegen. Lass dir mit preg_match_all() alle Vorkommnisse in ein Array packen und geh dann dieses mit einem foreach() durch

      Kommentar


      • #4
        @TBT:
        Sunshine CMS
        BannerAdManagement
        Borlabs - because we make IT easier
        Formulargenerator [color=red]Neu![/color]
        Herkunftsstatistik [color=red]Neu![/color]

        Kommentar

        Lädt...
        X