php 如何禁用eval 函式例項詳解

2022-09-29 12:51:11 字數 630 閱讀 6714

php eval() 函式運算元組:

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

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

var_dump($arr); //array

?>

執行結果:

array(4) www.cppcns.com

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

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

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

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

那麼php怎麼禁止eval呢?

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

安裝suhosin後在php.ini中load進來suhosin.so,再加上suhosin.execut = on即可

本文標題: php 如何禁用eval() 函式例項詳解

本文位址:

php中eval函式的危害與正確禁用方法

php的eval函式並不是系統元件函式,因此我們在php.ini中使用disable functions是無法禁止它的。但是eval 對於php安全來說具有很大的殺傷力,因此一般不用的情況下為了防止類似如下的一句話木馬入侵,需要禁止!1 eval post cmd eval 使用範例 1 2 3 4...

php中eval函式的危害與正確禁用方法

php的eval函式並不是系統元件函式,因此我們在php.ini中使用disable functions是無法禁止它的。但是eval 對於php安全來說具有很大的殺傷力,因此一般不用的情況下為了防止類似如下的一句話木馬入侵,需要禁止!www.cppcns.comeval 使用範例 name 咖啡 s...

php函式 eval用法

參考 注意事項 1用法 eval phpcode 2.phpcode為字串型別,每行 需要帶結束符 否則會提示error end 的錯誤3.注意 轉義 在使用 用 符號時,注意用 代替 t需要寫為 t 示例1 在文字框中輸入 並執行 code isset get code get code null...