php转换文件上传格式,PHP将上传文件转换成RAR格式压缩文件

时间:2018-10-24

概述:压缩文件 上传文件

本示例可完成两种功能,一是上传文件,二是将上传的文件格式变为rar压缩文件格式,此功能使用了com组件,在PHP中新建wscript.shell,然后调用Winrar软件进行操作,请确保电脑中安装有Winrar软件:

先来看上传文件及转换部分代码,请保存为upload.php文件:

if ($_POST ['Submit'] != "") {

if (! empty ( $_FILES ['sourcefile'] [name] )) { //判断上传内容是否为空

if ($_FILES ['sourcefile'] ['error'] > 0) { //判断文件是否可以上传到服务器

echo "上传错误:";

switch ($_FILES ['sourcefile'] ['error']) {

case 1 :

echo "上传文件大小超出配置文件规定值";

break;

case 2 :

echo "上传文件大小超出表单中约定值";

break;

case 3 :

echo "上传文件不全";

break;

case 4 :

echo "没有上传文件";

break;

}

} else {

if (! is_dir ( "./upfile/" )) { //判断指定目录是否存在

mkdir ( "./upfile/" ); //创建目录

}

$path = './upfile/' . time () . strstr ( $_FILES ['sourcefile'] ['name'], '.' ); //定义上传文件名称和存储位置

if (is_uploaded_file ( $_FILES ['sourcefile'] ['tmp_name'] )) { //判断文件是否是HTPP POST上传

if (! move_uploaded_file ( $_FILES ['sourcefile'] ['tmp_name'], $path )) { //执行上传操作

echo "上传失败";

} else {

$path = realpath ( iconv ( "utf-8", "gb2312", $path ) ); //获取上传文件在服务器中的绝对路径

$len = strripos ( $path, "." ); //计算路径的长度

$file_path = substr ( $path, 0, $len ); //获取上传文件的路径名称

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

$obj->run ( "winrar a -ep -df " . $file_path . ".rar" . " " . $path . "", 1, false ); //调用类中的方法,文件压缩

echo "文件:" . $_FILES ['sourcefile'] ['name'] . "上传成功!" . "
";

echo "大小:" . $_FILES ['sourcefile'] ['size'] . " 字节";

}

} else {

echo "上传文件" . $_FILES ['sourcefile'] ['name'] . "不合法!";

}

}

}

}

?>

以下是表单文件代码,请保存为index.html,在上传前添加了js对上传表单做简单判断:

PHP将上传文件转换成RAR文件

function chkinput(form){

if(form.sourcefile.value==""){

alert("请选择要上传的文件!");

form.sourcefile.select();

return(false);

}

return(true);

}

    
 选择上传文件:

class="inputcss" id="sourcefile" size="30">

class="buttoncss" value="提交">

  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值