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);

评论 抢沙发

表情
  1. 来自四川成都的用户(2017-06-19 11:26)
    怎么做svn手动更新

  2. 来自四川成都的用户(2017-06-09 23:28)
    一个控制器需要执行多次命令怎么弄?

  3. 来自四川成都的用户(2017-06-08 07:26)
    厉害了。我的哥