Google weiß alles: Platzhalter sind in PHP "nicht wirklich sinnvoll"

Beitrag lesen

eine allgemeine Frage. Was sind das {{ ... }} für platzhalter,

Du meinst sicher sowas:

Template:

Kleine {{FARBE}} Männchen stammen vom {{PLANET}}.

Platzhalter sind immer irgendwie "selbst definiert". Es sind einfach Zeichenfolgen von denen der Verwender hofft, dass diese in den Templates

  • eindeutig sind
  • im Text, der die Platzhalter ersetzt, nicht vorkommen.

Deshalb wohl die von Dir irgendwo gesehene Verwendung von {{ und }} als Begrenzer von Platzhaltern.

Im Übrigen ist speziell in PHP diese Vorgehensweise nicht wirklich eine gute Idee. PHP ist selbst Templatesprache genug.

Obiges Beispiel müsste man ETWA so bearbeiten:

<!-- template: file template.txt //-->
Kleine {{FARBE}} Männchen stammen vom {{PLANET}}.
<?php
/**
* Desciption: Das ist Mist!
**/

## Daten:
$tpl['FARBE']  = 'grüne';
$tpl['PLANET'] = 'Mars';

## "Minimale Template-Engine"
$template = file_get_contents('template.txt');
foreach ( array_keys($tpl) as $str ) {
   $search[] = '{{' . $str . '}}';
   $replace[]= $tpl[$str];
}
echo str_replace( $search, $replace, $template );

Das Ergebnis:

<!-- template: file template.txt //-->
Kleine grüne Männchen stammen vom Mars.

Sieht zwar gut aus, ist aber, weil PHP bereits eine Templatesprache ist, UNSINN.

weil mit:

<!-- template: file template.php //-->
Kleine <?=$tpl['FARBE'];?> Männchen stammen vom <?=$tpl['PLANET'];?>.

und

<?php
## Daten:
$tpl['FARBE']  = 'grüne';
$tpl['PLANET'] = 'Mars';

##
require( 'template.php' );

Ergebnis:

<!-- template: file template.php //-->
Kleine grüne Männchen stammen vom Mars.

das ganze viel eleganter zu bewerkstelligen ist. Es ist schneller, es gibt praktikable Fehlermeldungen (Notizen), Editoren zeigen das nativ in PHP geschriebene Template "schön bunt" an - und kürzer ist es auch noch....

0 58

doppelt geschweifte klammern

.MB
  • programmiertechnik
  1. 0
    chorn
    1. 0
      .MB
      1. 1
        Auge
      2. 1
        dedlfix
        1. 0
          .MB
          1. 1
            dedlfix
          2. 1
            Linuchs
  2. 0
    dedlfix
    1. 0
      .MB
  3. 1
    Der Martin
    1. 0
      .MB
      1. 1
        Der Martin
        1. 0
          .MB
  4. 0
    Rolf b
    1. 0
      Tabellenkalk
      1. 0
        dedlfix
    2. 0
      .MB
  5. 1

    Platzhalter sind in PHP "nicht wirklich sinnvoll"

    Google weiß alles
    1. 1
      dedlfix
    2. 1

      Noch ein "Geimtipp"

      Google weiß alles
      1. 0
        pl
        1. 0
          Mitleser
          1. -1
            pl
            1. 0
              Mitleser
            2. 0
              1unitedpower
    3. 3
      Tabellenkalk
      1. -1
        Google weiß alles
        1. 0
          Rolf b
          1. 0
            Google weiß alles
            1. 0
              Gunnar Bittersmann
            2. 0
              1unitedpower
          2. 0
            Google weiß alles
            1. 0
              Tabellenkalk
              1. 0
                Google weiß alles
                1. 0
                  Tabellenkalk
            2. 0
              mermshaus
              1. 0
                Google weiß alles
                1. 1
                  mermshaus
                  1. 1
                    mermshaus
                    1. 0
                      Google weiß alles
                      1. 0
                        Mitleser
                        1. 0

                          Klare Ansage: Lesen und keine falschen Behauptungen aufstellen

                          Google weiß alles
                          • meinung
                          1. 1
                            mermshaus
                            1. 0
                              Google weiß alles
                      2. 2
                        mermshaus
                        1. 1
                          mermshaus
                          1. 0
                            Google weiß alles
                        2. 0
                          Google weiß alles
                          1. 0

                            Korrektur

                            Google weiß alles
                  2. -1
                    Google weiß alles
    4. 0
      pl
    5. 0
      Felix Riesterer
      1. 0
        Google weiß alles
  6. 0
    1unitedpower
    1. 0
      mermshaus
  7. 0
    KoJoTe
    1. 0
      MB