php格式转换rar,如何在PHP中创建压缩的RAR文件?

如何在PHP中创建压缩的RAR文件?

在网站中,上传文件大多数都是以压缩包形式存在的,所以我们首先必须要将上传的文件压缩后才能够上传,那么我们如何实现网站中上传文件的自动压缩功能呢?今天就给大家详细介绍一下!

文件压缩主要应用PHP 的预定义类 com,将wscrip.shell 对象作为 com类的参数,最终通过调用 com类的 run()方法实现文件的压缩。

com 类提供了一个将 COM组件整合到 PHP 脚本中的框架,实例化方法如下:$obj = new COM("server.object")

com类构造函数的语法如下:string COM::COM( string module_name [, string server_name [, int codepage]] )

参数说明:

module_name:被请求组件的名字 或者 class-id。

server_name :DCOM 服务器的名字,组件在此服务器上被取用,如果是NULL,那么假定是loaclhost。如果要支持允许DCOM,那么必须将 php.ini 中的 com.allow_dcom设置为 TRUE。

codepage:指定用于将PHP 字符串(php-string)转换成UNICODE 字符串(unicode-strings)的代码页,反之亦然。可用的值有CP_ACP , CP_MACCP , CO_OEMCP , CP_SYMBOL , CP_THREAD_ACP, CP_UTF7以及CP_UTF8。

com类中的 run()方法的语法格式如下:run("winrar a 生成的 rar 文件的路径及名称 要压缩的文件的路径以及名称",1,false);

应用实例

本实例中讲解在PHP中如何创建 RAR文件,具体步骤如下:

(1)创建PHP页面,首先创建一个表单,设置文件域,提交要压缩的文件,设置文本框,提交压缩文件的存储位置,设置按钮,完成表单元素的提交操作。

(2) 在php文件中编写 PHP脚本,通过post方法获取表单提交的数据,通过iconv()函数完成数据编码格式的转换,实例化 com类,调用 run()方法完成文件的压缩操作。

其代码如下:<?php

header("Content-Type:text/html; charset=utf-8");

if ($_POST['Submit']){

$sourcefile = iconv("utf-8","gb2312",$_POST['sourcefile']); //获取指定文件的路径

$objfile = $_POST['objfile']."\\".time(); //定义压缩文件的存储位置和名称

$objfile = iconv("utf-8","gb2312",$objfile); //实现编码转换

$obj= new COM("wscript.shell"); //实例化 com类

$obj -> run("winrar a".$objfile."".$sourcefile."",1,false); //调用类中的方法

echo "";

}

?>

运行本实例,首先选择要压缩的文件,然后设置压缩文件的存储位置,单击“提交”按钮,就完成了!

注意:

在执行文件压缩操作时,切记在文件的存储路径中不要出现空格(包括被压缩文件的路径、名称一级压缩文件的存储路径),否则压缩操作将不会正确执行!

到这里我们就介绍完如何在PHP中创建压缩的RAR文件了,小伙伴们都掌握了吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值