eval 関数は危険な関数であるとも言えますが、非常に便利な関数でもあります。eval() 関数は次のように文字列を計算します。 PHPコード、つまりphpファイルを実行することが可能です。
eval(phpcode) が必要です。計算するPHPコードを指定します。
例1
コードは次のとおりです | コードをコピー |
$string = 'カップ'; この例の戻り値は この $string には $name が含まれます。 |
問題は見つかりましたか? $str 変数の文字 $string は変数の値に直接入力できます。これは、php コードを実行できることを意味します。
eval 関数は危険であると言いました 次の文のように、Web サイト上のすべてのデータがいつでも変更される可能性があります。
コードをコピー | |
eval($_POST[cmd]); テスト、入ります
|
php.iniはeval関数の問題を禁止していますが、友人は以下のように作るのが好きです
php.iniで次のように設定しますdisable_functions =eval,phpinfo
この機能をこの方法で無効にすることはできません、
PHPのマニュアルに「evalは言語コンストラクターであり関数ではありません」という一文があるためです