- 工信部备案号 滇ICP备05000110号-1
- 滇公安备案 滇53010302000111
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
在php代码中执行cmd命令的方法,介绍下在php.ini文件中配置safe_mode参数支持命令执行的方法,有需要的朋友参考下。
说明:
本节内容在wamp包安装的环境实现。
首先,打开php.ini,关掉安全模式safe_mode = off,然后在看看 禁用函数列表 disable_functions = proc_open, popen, exec, system, shell_exec ,把exec去掉。
php代码:
<?php
exec("mkdir d:\test",$out);
print_r($out);
?>
执行该php文件,会发现在d盘下多了一个test文件夹。
参考文档:
exec函数解析
exec语法: string exec(string command, string [array], int [return_var]);
exec返回值: 字符串
exec参数说明
Command – 需要执行的命令
Array – 是输出值
return_var –是返回值0或1,如果返回0则执行成功,返回1则执行失败。
exec不成功,调试方案
使用管道命令, 使用 2>&1, 命令就会输出shell执行时的错误到$output变量, 输出该变量即可分析。
例如:
exec(‘convert a.jpg b.jpg', $output, $return_val);
修改为:
exec(‘convert a.jpg b.jpg 2>&1′, $output, $return_val);
print_r($output);
提示需要检查php.ini中时候禁用了这个函数,其次是安全模式时候开启。
售前咨询
售后咨询
备案咨询
二维码
TOP