PHP的eval误区

发布:2017-05-17 12:58   点击:141次   回复:0

这都是我踩过的误区!麻烦您不用再踩了!

====================================================

[已测试]

  • langConstructs
    • die, exit,
    • echo, print,
    • empty, isset, unset,
    • eval, list,
    • include, include_once,
    • require, require_once,

====================================================

[我就不测试了,上面已经证实...]

  • 禁止掉eval的错误方法
  • 然而网上很多说使用disable_functions禁止掉eval的方法都是错误的!
  • 其实eval()是无法用php.ini中的disable_functions禁止掉的 :
  • because eval() is a language construct and not a function
  • eval是zend的,因此不是PHP_FUNCTION 函数;
  • 那么php怎么禁止eval呢?
  • 如果想禁掉eval可以用php的扩展 Suhosin:
  • 安装Suhosin后在php.ini中load进来Suhosin.so,再加上suhosin.executor.disable_eval = on即可!
  • 总结,php的eval函数在php中是无法禁用的,因此我们也只有使用插件了!

====================================================

php7.x 不能使用eval?

  • php7 / eval
  • php7 不再支持eval?能用!
  • 能用!只是很多场景不建议使用!!![2017-05-17]
状态:开放 Makedown ---   bug编号: ---
回复(0条)   >>我来回复 回复列表

关于 GitHub 导航 部门 反馈

提示:`/home.php`入口数据仅为演示功能,不构成任何交易凭证,也不承担相关风险和责任!

Copyright © 2011-2018 xxxxx.com All rights reserved.

Run:2.494/30.518(ms); 8(sql)/3.265(MB); comm:faqs/detail; Upd:2024-11-15 18:52:55