PHP上传压缩包并自解压方法

1、PHP上传压缩包并解压的大概流程:

普通上传功能->上传到服务器->加载系统组件->找到上传的文件并执行解压命令->成功解压到目录

2、php执行系统命令的几类函数:

(1)system() 输出并返回最后一行shell结果。

(2)exec() 不输出结果,返回最后一行shell结果

(3)passthru() 只调用命令,把运行结果原样地输出

(4)new com()  系统预定义com类,根据需要任意选择内置方法(操作方式再麻烦,但也是功能最全的)

3、Com组件的用法:

(1)$obj=new com("wscript.shell");//加载wscript.shell用来执行dos命令的组件

(2)$obj->run(“所要执行的命令内容”);//所要执行的命令和返回参数

由于只是说明原理,一些安全验证判断就不写出来了,大家可以自行补充。

通俗易懂,直接上代码:(记得打开php.ini里的com.allow_dcom = true)

 1 <?php
 2
 3     if($_POST[‘submit‘]){
 4         $tmpname=$_FILES[‘filename‘][‘tmp_name‘];
 5         $filename=$_FILES[‘filename‘][‘name‘];
 6         $path=getcwd();//获取当前目录的绝对路径
 7         $filepath=$path.‘\\‘.$filename;
 8
 9         move_uploaded_file($tmpname, $filename);
10
11         $obj=new com(‘wscript.shell‘);
12         //双引号可以解析变量
13         $obj->run("winrar x $filepath $path",1,true);
14         //删除源文件
15         @unlink($filename);
16
17
18     }
19
20
21 ?>
22
23
24     <form action="" method="post" enctype="multipart/form-data">
25         上传文件:<input type="file" name="filename"/>
26         <input type="submit" name="submit" value="上传文件并解压">
27     </form>

轻松搞定~

PHP上传压缩包并自解压方法,布布扣,bubuko.com

时间: 2024-07-30 13:52:56

PHP上传压缩包并自解压方法的相关文章

运用php上传大文件配置方法

网站建设:运用php上传大文件配置方法如下: 翻开php.ini, 1.第一找出 file uploads区域,有影响文件上传的以下几个参数: file_uploads = on ;能否准许经过http上传文件的开关.默许为on即是开 upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,假设没指定就会用系统默许的临时文件夹 upload_max_filesize = 8m ;望文生意,即准许上传文件大小的最大值.默许为2m 2.在resource limits区域,还有参数 ;

Java 微信公众号上传永久素材的方法

Java 微信公众号上传永久素材的方法 学习了:http://blog.csdn.net/u013791374/article/details/53258275 膜拜一下,源码如下: @RequestMapping(value="create") public String create(@RequestParam MultipartFile file, HttpServletRequest request, HttpServletResponse response, HttpSess

修改PHP上传文件大小限制的方法

感谢分享,原文地址:http://www.cnblogs.com/newsouls/archive/2012/12/27/2835628.html 修改PHP上传文件大小限制的方法1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完.但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行.这就导致出现 无法打开网页的情况.这时我们可以修改 max_execution_time在php.ini里查找max_execution_time默

asp.net 中 UEditor 图片上传失败的处理方法

1.0 找到 net 文件夹下面的 web.config 配置文件,注释掉如下的两句: 2.0 Uploader文件默认属性为编译,将其属性改为内容以后重新运行程序,图片上传成功. 3.0 删除 imageUp.ashx 中的 <%@ Assembly Src="Uploader.cs" %> asp.net 中 UEditor 图片上传失败的处理方法

小程序---&gt;小程序图片上传阿里OSS使用方法

小程序图片上传阿里OSS使用方法 首先看下参考文档 ( http://blog.csdn.net/qq_38125123/article/details/73870667) 这里只将一些运用过程中遇到的问题及解决办法: 1.cryptojs,sha1js,hmacjs,base64js在哪下载及使用方法: 文件可以在阿里oss实例文档中找到. 在运用过程中如果是通过require引入的,会找不到引入的方法,原因是这些js文档没有模块导出,可以在原文件里找到其顶部全局对象,exports出来即可.

详解jQuery uploadify文件上传插件的使用方法

uploadify这个插件是基于js里面的jquery库写的.结合了ajax和flash,实现了这个多线程上传的功能. 现在最新版为3.2.1. 在线实例 实例中用到的php文件UploaderDemo.php请在页面下方下载 引入文件 <link rel="stylesheet" type="text/css" href="uploadify.css" /> <script type="text/javascript

linux系统上传下载文件的方法

linux系统上传.下载文件的方法有很多种,最常见的有ftp(需要安装ftp软件及配置),这里不做介绍, 下面介绍我常用的两种方式: 1.sftp方式(通过SecureCRT工具的ssh服务传输): 1.打开CRT工具自带的sftp(通过Alt+P命令打开),如图: 默认进入当前用户的家目录,可以自行cd命令切换到上传.下载的目录(windows操作文件系统需要在命令前加 l 参数,如lcd e:\到E盘根目录,lls列出根目录下的文件),上传通过put 加文件名,下载通过get 加文件名) 2

修改WordPress中上传附件2M大小限制的方法/php+iis上传附件默认大小修改方法

在服务器上架设好WordPress后,使用过程中发现,上传附件大小有2M的限制 话说服务器就是本机,可以直接把文件拖到附件存储文件夹下,然后在需要附件的地方引用链接 可是这种落后的方法终究不是办法,还是应该修改大小限制,使用才方便. 在网搜了一下,方法有挺多,但大部分都是不完整信息的重复,下面说说我最后更改的方法,仅供参考. 服务器版本是:Windows Server 2003 SP2 WordPress架设:IIS+PHP+MySql 1.首先在网站根目录下建一个info.php文件 例如:D

兼容IE的头像上传插件的设计方法(asp.net mvc)

使用了两个插件 1.文件上传插件uploadify 2.图像编辑插件jquery.Jcrop 基于Asp.net的mvc设计模式,设计了该插件 下面贴代码: view(.cshtml): <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <link href="~/Bo