- 相關(guān)推薦
php如何禁用eval函數(shù)
php的eval函數(shù)并不是系統(tǒng)組件函數(shù),因此我們?cè)趐hp.ini中使用disable_functions是無(wú)法禁止它的。以下是小編為大家搜索整理的PHP如何禁用eval函數(shù),希望能給大家?guī)?lái)幫助!更多精彩內(nèi)容請(qǐng)及時(shí)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
php eval() 函數(shù)操作數(shù)組:
$data = "array('key1'=>'value1','key2'=>'value2','key3'=>'value3','key4'=>'value4')";
$arr = eval("return $data;");
var_dump($arr); //array
?>
運(yùn)行結(jié)果:
array(4) { ["key1"]=> string(6) "value1" ["key2"]=> string(6) "value2" ["key3"]=> string(6) "value3" ["key4"]=> string(6) "value4" }
網(wǎng)上很多說(shuō)使用disable_functions禁止掉eval的方法都是錯(cuò)誤的!
其實(shí)eval()是無(wú)法用php.ini中的disable_functions禁止掉的 :
because eval() is a language construct and not a function
eval是zend的,因此不是PHP_FUNCTION 函數(shù);
那么php怎么禁止eval呢?
如果想禁掉eval可以用php的擴(kuò)展 Suhosin:
安裝Suhosin后在php.ini中l(wèi)oad進(jìn)來(lái)Suhosin.so,再加上suhosin.executor.disable_eval = on即可
【相關(guān)閱讀】
PHP框架是什么
PHP作為網(wǎng)絡(luò)開(kāi)發(fā)的強(qiáng)大語(yǔ)言之一,現(xiàn)在應(yīng)用非常廣泛,具有開(kāi)放源代碼,跨平臺(tái)性強(qiáng),開(kāi)發(fā)快捷,效率高,面向?qū)ο,并且易于上手,專業(yè)專注等諸多優(yōu)點(diǎn)。各種PHP開(kāi)發(fā)框架也讓程序開(kāi)發(fā)變的簡(jiǎn)單有效
框架就是通過(guò)提供一個(gè)開(kāi)發(fā)Web程序的基本架構(gòu),PHP開(kāi)發(fā)框架把PHPWeb程序開(kāi)發(fā)擺到了流水線上。換句話說(shuō),PHP開(kāi)發(fā)框架有助于促進(jìn)快速軟件開(kāi)發(fā)(RAD),這節(jié)約了你的時(shí)間,有助于創(chuàng)建更為穩(wěn)定的程序,并減少開(kāi)發(fā)者的'重復(fù)編寫(xiě)代碼的勞動(dòng)。這些框架還通過(guò)確保正確的數(shù)據(jù)庫(kù)操作以及只在表現(xiàn)層編程的方式幫助初學(xué)者創(chuàng)建穩(wěn)定的程序。PHP開(kāi)發(fā)框架使得你可以花更多的時(shí)間去創(chuàng)造真正的Web程序,而不是編寫(xiě)重復(fù)性的代碼。
【php如何禁用eval函數(shù)】相關(guān)文章:
PHP函數(shù)的區(qū)別及用法10-27
PHP類與構(gòu)造函數(shù)07-01
簡(jiǎn)單PHP數(shù)組函數(shù)介紹09-26
php摘要生成函數(shù)詳解09-02
PHP常用的文件操作函數(shù)10-17
PHP網(wǎng)絡(luò)操作函數(shù)講解07-23
2017PHP5函數(shù)大全10-24