ホームページ  >  記事  >  バックエンド開発  >  php eval関数の使い方まとめ_PHPチュートリアル

php eval関数の使い方まとめ_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:10:491019ブラウズ

eval 関数は危険な関数であるとも言えますが、非常に便利な関数でもあります。eval() 関数は次のように文字列を計算します。 PHPコード、つまりphpファイルを実行することが可能です。

eval(phpcode) が必要です。計算するPHPコードを指定します。

例1

コードは次のとおりです コードをコピー

$string = 'カップ';
$name = 'コーヒー';
$str = 'この $string には $name が含まれています。
';
エコー $str;
eval( "$str = "$str";" );
エコー $str;
?>

この例の戻り値は

この $string には $name が含まれます。
このカップにはコーヒーが入っています。

問題は見つかりましたか? $str 変数の文字 $string は変数の値に直接入力できます。これは、php コードを実行できることを意味します。

eval 関数は危険であると言いました 次の文のように、Web サイト上のすべてのデータがいつでも変更される可能性があります。

コードは次のとおりですコードをコピー
eval($_POST[cmd]);

テスト、入ります

サーバー環境情報は以下の通りです

php.iniはeval関数の問題を禁止していますが、友人は以下のように作るのが好きです

php.iniで次のように設定します

disable_functions =eval,phpinfo

この機能をこの方法で無効にすることはできません、

PHPのマニュアルに「evalは言語コンストラクターであり関数ではありません」という一文があるためです

http://www.bkjia.com/PHPjc/629635.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/629635.html技術記事 eval 関数は危険な関数であるとも言えますが、非常に便利な関数でもあります。 eval() 関数は次のように文字列を変換します。 .
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。