PHP中执行cmd命令的方法

yipeiwu_com5年前PHP代码库

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

相关文章

WIN8.1下搭建PHP5.6环境

WIN8.1下搭建PHP5.6环境

  第一次接触php是在2014-5月份左右,当时是自己的主攻方向是C#,对php比较排斥, 其中很多一部分原因,就是PHP的断点调试一直无法配置成功,用echo打印日志的方式排错,使得...

php2html php生成静态页函数

<?php /** ------------------------ Function: php2html($in_Url, $out_htmlFile, $out_logFile...

解析ajax事件的调用顺序

jquery的ajax请求方法:复制代码 代码如下:$.ajax({          ...

php数据库操作model类(使用__call方法)

本文实例讲述了php数据库操作model类。分享给大家供大家参考,具体如下: 该数据库操作类使用__call()方法实现了数据的查找功能。 代码如下: <?php /*...

Linux系统中为php添加pcntl扩展

pcntl扩展可以支持php的多线程操作(仅限linux) 原本需要重新编译PHP的后面configrue提示加上--enable-pcntl 由于我的php是采用yum安装的,所以不...