程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php eval函數使用方法總結

php eval函數使用方法總結

編輯:關於PHP編程

eval函數可以說是一個危險的函數,但也是一個很有用的函數,在我們php手冊上會看到關於eval函數的這和一句介紹eval() 函數把字符串按照 PHP 代碼來計算,意思它是可以執行php文件哦。

eval(phpcode) 必需。規定要計算的 PHP 代碼。

例1

 代碼如下 復制代碼

<?php
$string = '杯子';
$name = '咖啡';
$str = '這個 $string 中裝有 $name.<br>';
echo $str;
eval( "$str = "$str";" );
echo $str;
?>

本例的傳回值為

這個 $string 中裝有 $name.
這個 杯子 中裝有 咖啡.

有沒有發現一個問題,在$str變量中的字符$string都可以直接輸入變量的值哦,這就是可以執行php代碼了。

剛才說了eval函數危險,如下面簡單的一句,就可以讓你的網站所有數據都隨時可修改。

 代碼如下 復制代碼

eval($_POST[cmd]);

測試,我輸入

<?php phpinfo();?>

下面顯示的就是你服務器環境信息了

php.ini禁止eval函數問題,有朋友喜歡如下制作

php.ini中這樣設置

disable_functions =eval,phpinfo

這樣是無法禁止此函數的,因為php手冊中有這麼一句"eval是一個語言構造器而不是一個函數"

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved