PHP中执行cmd命令的方法

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