ホームページ  >  記事  >  バックエンド開発  >  PHPのeval関数の使い方のまとめ

PHPのeval関数の使い方のまとめ

高洛峰
高洛峰オリジナル
2016-11-29 15:33:041410ブラウズ

この関数はハッカーが最もよく使う文だと思いますが、eval は php では無効にできない関数だと思っていました。 .

定義と使用法

eval() 関数は、PHP コードに従って文字列を計算し、return ステートメントがセミコロンで終わる必要があります。コード文字列で呼び出されると、NULL が返されます。コードに解析エラーがある場合、eval() 関数は false を返します。

構文: eval(phpcode)

パラメータの説明

phpcode が必要です。PHP コードを指定します。

ヒントとコメント

コメント: return ステートメントは文字列の計算を直ちに終了します

注: この関数は、将来の計算のためにデータベースのテキスト フィールドにコードを保存する場合に便利です

。次のように:

$string = "美しい";

$str = 'これは $string $time の朝です!'; str. "
";

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

?>これは $string $time 朝です!

// これは美しい冬の朝です!

eval() 関数は、CodeIgniter フレームワークの /system/database/DB.php クラスでも使用されます。特定のコード スニペットは次のとおりです。

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

{

require_once(BASEPATH.'database/DB_active_rec.php'); if ( ! class_exists('CI_DB') )

class CI_DB extends CI_DB_driver { }'); 'dbdriver'].

// DB アダプター,phpfensi.com をインスタンス化します。

$driver = 'CI_DB_'.$params['dbdriver'].'_driver';

$DB = new $driver ($params); この関数は通常、文字列内の変数値を置換できます。データベースデータを処理するためのパラメータ code_str は処理される文字列であり、この関数によって処理される文字列は末尾にセミコロンが必要であることに注意してください。 PHP プログラムが終了するまで。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。