本文介绍下,在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);