在yii中压缩/解压缩文件

时间:2012-06-24 14:10:57

标签: yii yii-extensions

我想使用yii中提供的扩展。

请在yii中建议一些扩展来压缩/解压缩上传的文件。并存储在服务器或目录上,并在下载时再次解压缩..

这里我使用扩展EAjaxUpload扩展来上传文件。

视图

<?php
$this->widget('ext.EAjaxUpload.EAjaxUpload',
        array(
       'id'=>'uploadResume',
                'config'=>array(
                       'action'=>Yii::app()->baseUrl.'/index.php?r=site/word', 
                       'allowedExtensions'=>array("doc","docx"),
                       'sizeLimit'=>10*1024*1024,
                       'minSizeLimit'=>1*1024,
                       'multiple'=>false,
                       'onComplete'=>'js:function(id, fileName, responseJSON){alert(messages);}),
?>

IN CONTROLLER

    action{
    Yii::import("ext.EAjaxUpload.qqFileUploader");
    $folder = 'Resumes/';
            $allowedExtensions = array("doc","docx");
    $sizeLimit = 10 * 1024 *1024;
    $uploader = new qqFileUploader($allowedExtensions, $sizeLimit);
    $result = $uploader->handleUpload($folder);
    if(isset($result['success']))
            if($result['success']==true)
            {

                $fileSize=filesize($folder.$result['filename']);
            $fileName=$result['filename'];
                $mimetype = $fileName['mime']; 
            }
           // rename($folder.$result['filename'],$folder.$fileName);
           $return = htmlspecialchars(json_encode($result), ENT_NOQUOTES);
       echo $return;

    }

1 个答案:

答案 0 :(得分:0)

您应该使用系统工具,例如tar或zip / unzip,您可以使用execsystem

来调用此命令