Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung der Verwendung der PHP-Bewertungsfunktion

Zusammenfassung der Verwendung der PHP-Bewertungsfunktion

高洛峰
高洛峰Original
2016-11-29 15:33:041407Durchsuche

Ich denke, dass diese Funktion von Hackern am häufigsten verwendet wird. Es ist eine Funktion, die in PHP nicht deaktiviert werden kann in php.ini deaktiviert, aber das Ergebnis ist fehlgeschlagen.

Definition und Verwendung

Die Funktion eval() berechnet die Zeichenfolge gemäß dem PHP-Code. Die Zeichenfolge muss ein zulässiger PHP-Code sein und enden mit einem Semikolon. Wenn die Return-Anweisung in der Codezeichenfolge aufgerufen wird, wird NULL zurückgegeben. Wenn im Code ein Analysefehler vorliegt, gibt die Funktion eval() false zurück.

Syntax: eval(phpcode )

Parameterbeschreibung

phpcode ist erforderlich und gibt den zu berechnenden PHP-Code an.

Tipps und Kommentare

Hinweis: Die Return-Anweisung wird sofort beendet die Berechnung der Zeichenfolge.

Hinweis: Diese Funktion ist nützlich, um Code in einem Datenbanktextfeld für eine spätere Berechnung zu speichern.

Der PHP-Beispielcode lautet wie folgt:

$string = "schön";

$time = "winter";

$str = 'Das ist ein $ string $time Morning!';

echo $str "
"

eval("$str = "$str";" );

echo $str;

?>

//Dies ist ein $string $time-Morgen! >

//Dies ist ein wunderschöner Wintermorgen! Die Funktion eval() ist auch im CodeIgniter-Framework nützlich. In der Datei /system/database/DB.php ist eine Klasse CI_DB entsprechend dynamisch definiert zur Systemkonfiguration. Das spezifische Code-Snippet lautet wie folgt:

if ( !isset($active_record) OR $active_record == TRUE)

{

require_once(BASEPATH .'database/DB_active_rec.php');

if (! class_exists('CI_DB'))

{

eval('class CI_DB erweitert CI_DB_active_record {}');

                                                                    > } 

else 

 { 

                                                                                                                     

eval(' ​​class CI_DB erweitert CI_DB_driver { }' );

}

} ['dbdriver'].'/'.$params['dbdriver'].'_driver.php'); params['dbdriver'].'_driver';

$DB = new $driver($params);

Diese Funktion kann einen String in den Variablenwert umwandeln Wird normalerweise zum Verarbeiten von Datenbankdaten verwendet. Es ist zu beachten, dass die zu verarbeitende Zeichenfolge dem PHP-Zeichenfolgenformat entsprechen muss und am Ende der Zeichenfolge stehen muss Diese Funktion wird bis zum Ende des PHP-Programms fortgesetzt.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn