eval() versucht, den in
code_str
enthaltenen String als PHP-Code
auszuführen. Abgesehen von anderen Zwecken kann dies nützlich
sein, um Code auszuführen, der aus einer Datenbank ausgelesen
wird.
Beim Gebrauch von eval() gilt es einige
Faktoren zu beachten. Die Zeichenkette
code_str
muss gültigen PHP-Code enthalten,
einschließlich syntaktisch richtiger Begrenzungszeichen (also
incl. ";"-Abschluss-Zeichen für einzelne Anweisungen, sonst
bricht der PHP-Parser in der folgenden Zeile mit einem Fehler ab.
Beachten sie, dass die innerhalb von eval() vorgenommenen Variablen-Zuweisungen nach Abarbeitung auch im Hauptskript ihre Gültigkeit behalten.
Eine return-Angabe beendet sofort die Auswertung des Strings. Mit PHP4 können sie ein return verwenden, um das Ergebnis der Funktion eval() zu erhalten. In PHP3 ist eval() nämlich vom Typ void und liefert nichts zurück.
Das obige Beispiel gibt aus:
Das ist mein $string, voll mit $name. Das ist mein Bierglas, voll mit Binding-Lager. |
Beachten sie bitte das Setzen des Begrenzungs-Zeichens ";" in
code_str
sowie den Gebrauch des
"\"-Zeichens.