Join Up!
104884 members and counting!

 
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links 
search for in the  
previousdieexitnext
Last updated: Mon, 28 Oct 2002
view the printer friendly version or the printer friendly version with notes or change language to Czech | Finnish | Spanish

eval

(PHP 3, PHP 4 )

eval --  Wertet einen String aus, als wäre er PHP-Code

Beschreibung:

mixed eval ( string code_str)

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.

Beispiel 1. eval()-Beispiel (einfache Texteinfügung):

<?php
$string = 'Bierglas';
$name = 'Binding-Lager';
$str = 'Das ist mein $string, voll mit $name.<br>';
echo $str;
eval ("\$str = \"$str\";");
echo $str;
?>

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.

User Contributed Notes
eval
add a note about notes
There are no user contributed notes for this page.
previousdieexitnext
Last updated: Mon, 28 Oct 2002
Copyright © 2001, 2002 The PHP Group
All rights reserved.
This mirror generously provided by: http://phpbuilder.com/
Last updated: Thu Oct 31 18:34:28 2002 EST