當前位置:才華齋>計算機>php語言>

php如何禁用eval函式

php語言 閱讀(2.02W)

php的eval函式並不是系統元件函式,因此我們在中使用disable_functions是無法禁止它的。以下是小編為大家搜尋整理的PHP如何禁用eval函式,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網!

php如何禁用eval函式

php eval() 函式運算元組:

$data = "array('key1'=>'value1','key2'=>'value2','key3'=>'value3','key4'=>'value4')";

$arr = eval("return $data;");

var_dump($arr); //array

?>

  執行結果:

array(4) { ["key1"]=> string(6) "value1" ["key2"]=> string(6) "value2" ["key3"]=> string(6) "value3" ["key4"]=> string(6) "value4" }

網上很多說使用disable_functions禁止掉eval的方法都是錯誤的!

其實eval()是無法用中的disable_functions禁止掉的 :

because eval() is a language construct and not a function

eval是zend的,因此不是PHP_FUNCTION 函式;

那麼php怎麼禁止eval呢?

如果想禁掉eval可以用php的擴充套件 Suhosin:

安裝Suhosin後在中load進來,再加上ble_eval = on即可

  【相關閱讀】

  PHP框架是什麼

PHP作為網路開發的強大語言之一,現在應用非常廣泛,具有開放原始碼,跨平臺性強,開發快捷,效率高,面向物件,並且易於上手,專業專注等諸多優點。各種PHP開發框架也讓程式開發變的簡單有效

框架就是通過提供一個開發Web程式的基本架構,PHP開發框架把PHPWeb程式開發擺到了流水線上。換句話說,PHP開發框架有助於促進快速軟體開發(RAD),這節約了你的時間,有助於建立更為穩定的'程式,並減少開發者的重複編寫程式碼的勞動。這些框架還通過確保正確的資料庫操作以及只在表現層程式設計的方式幫助初學者建立穩定的程式。PHP開發框架使得你可以花更多的時間去創造真正的Web程式,而不是編寫重複性的程式碼。