PHP中执行cmd命令的方法

yipeiwu_com6年前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);

相关文章

在WordPress中实现发送http请求的相关函数解析

在 PHP 中发送 Http 请求(GET / POST)有很多的方法,比如 file_get_contents() 函数、fopen() 函数或者 cURL 扩展,但由于服务器的情况不...

php+html5+ajax实现上传图片的方法

本文实例讲述了php+html5+ajax实现上传图片的方法。分享给大家供大家参考,具体如下: <?php if (isset($_POST['upload'])) {...

PHP得到mssql的存储过程的输出参数功能实现

在开发过程中可能会遇到无法取得MSSQL存储过程的输出参数,很多朋友都不知道该怎么办,本文将详细介绍PHP得到mssql的存储过程的输出参数功能实现,需要了解的朋友可以参考下复制代码 代...

PHP的Yii框架中过滤器相关的使用总结

Yii过滤器简介 过滤器是一段代码,可被配置在控制器动作执行之前或之后执行。例如, 访问控制过滤器将被执行以确保在执行请求的动作之前用户已通过身份验证;性能过滤器可用于测量控制器执行所用...

php设置编码格式的方法

 a. 如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/html; charset=gb2312"),静态页面添加<meta...