PHP检测shell_exec是否可用 2020-05-01 前进路上 暂无评论 1824 次阅读 本文发布于2020-05-01, 文章内容或资源可能已经失效,仅供参考,谢谢。 使用PHP编写一个程序时遇到一个问题,就是我的程序需要使用`shell_exec`函数来更好地完成一个功能,但是由于安全的原因,`shell_exec`函数默认是被禁止的。为了让程序与使用者更加友好地交互,在程序运行的时候最好可以检测这个函数是否可用。如果不可用得发出提示。 # 方法 经过查询,使用下面方法可以在PHP程序中判断方法是否可用 ```php is_callable('shell_exec') && false === stripos(ini_get('disable_functions'), 'shell_exec'); ``` 如果`shell_exec`可以调用,则上面表达式返回`true`,否则返回`false`。 这么一看不只是`shell_exec`,像`passthru`、`exec`、`system`、`chroot`、`chgrp`、`chown`等这些默认也被禁用的函数都可以用这个方法检测。 # 解释 - is_callable:验证变量的内容是否可以作为函数调用 - stripos:查找字符串中首次出现的不区分大小写的子字符串的位置 - ini_get:获取一个配置选项的值 > REFERENCE - PHP - How to know if server allows shell_exec 标签: PHP 如果您对此页面有任何问题或建议,请在本站留言,或联系邮箱me[at]zkk.me本网站部分内容转载自其他网站,如有侵权,请联系博主