Das PHP eval () Mit construct wird eine Eingabezeichenfolge als PHP ausgewertet und dann als solche verarbeitet. Eval () ist keine Funktion, funktioniert aber in dem Sinne, dass es alles ausgibt - außer, dass es nicht als Text ausgegeben wird, sondern als auszuführender PHP-Code. Eine Verwendung des eval () -Konstrukts besteht darin, Code in einer Datenbank zu speichern, um ihn später auszuführen.
Hier ist ein einfaches Beispiel für die Codierung des eval () -Sprachenkonstrukts.
";
eval ("$ a =" $ a ";");
print $ a. "
";
?>
Dieses Codebeispiel gibt aus Meine Freunde sind $ name und $ name2 Beim ersten Aufruf mit der print-Anweisung, und es wird ausgegeben Meine Freunde sind Joe und Jim beim zweiten Aufruf nach dem Ausführen von eval ().
Das PHP-Handbuch rät von der Verwendung des eval () -Konstrukts ab und betont, dass seine Verwendung "sehr gefährlich" ist, da beliebiger PHP-Code ausgeführt werden kann. Benutzer werden angewiesen, eine andere Option als eval () zu verwenden, sofern dies nicht möglich ist. Die Verwendung des PHP eval () -Konstrukts birgt Sicherheitsrisiken.