echo-Anweisung mit eval() auswerten

Mit eval() lässt sich z.B. PHP-Code ausführen, der in einer Datenbank gespeichert ist. Der "normale" echo Befehl, also
Code:
echo "...";
funktioniert einwandfrei mit eval().

Ist es auch möglich, komplette echo-Blöcke, wie z.B.
Code:
echo <<<Abschnitt1
...Text...
Abschnitt1;
mit eval() auszuwerten? Dies hat bei mir bisher nicht funktioniert.
 
Ja das ist auch Möglich. Du musst halt an die enstsprechenden Stellen die Backslashes \ hintun.

Aber deine Stynax bei dem Zweiten Code Block ist falsch. Die Funktion "echo()" hat immer die Gleiche Stynax und zwar immer diese:
PHP:
echo "....";
//bzw.
echo ("...");
 
Die Syntax des 2. Code-Blocks ist nicht falsch. Sie funktioniert ohne
eval() einwandfrei und man muss auch keine Backslashes einfügen.
Nur mit eval scheint es nicht zu funktionieren, was ich aber gerne
möchte.

Unter
http://de3.php.net/echo
sind Beispiele für echo-Ausdrücke, unter anderem auch folgendes:

Code:
//...
echo <<<END
Dies verwendet die "here document" Syntax, um mehrere
Zeilen mit $variablen Interpolation auszugeben. Beachten Sie,
dass das sich das here document Endezeichen in einer Zeile
mit nur einem Strichpunkt ohne extra Leerzeichen befinden muss!
END;
//...
 
Zurück
Oben