中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

PHP實(shí)現(xiàn)zip壓縮解壓通用函數(shù)

2018-07-20    來(lái)源:open-open

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬(wàn)Linux鏡像隨意使用
function ezip($zip, $hedef = ''){
    $dirname=preg_replace('/.zip/', '', $zip);
    $root = $_SERVER['DOCUMENT_ROOT'].'/zip/';
    // echo $root. $zip;
    $zip = zip_open($root . $zip);
    // var_dump($zip);
    @mkdir($root . $hedef . $dirname.'/'.$zip_dosya);
    while($zip_icerik = zip_read($zip)){

        $zip_dosya = zip_entry_name($zip_icerik);
        if(strpos($zip_dosya, '.')){
            $hedef_yol = $root . $hedef . $dirname.'/'.$zip_dosya;
            @touch($hedef_yol);
            // echo $hedef_yol;
            $yeni_dosya = @fopen($hedef_yol, 'w+');
            @fwrite($yeni_dosya, zip_entry_read($zip_icerik));
            @fclose($yeni_dosya); 
            // $yeni_dosya;

        }else{
            @mkdir($root . $hedef . $dirname.'/'.$zip_dosya);
            // echo $root . $hedef . 'x/'.$zip_dosya;
        };
    };
}
// ezip('yuol.zip','./tr/');

function zip($path) {
    $path=preg_replace('/\/$/', '', $path);
    preg_match('/\/([\d\D][^\/]*)$/', $path, $matches, PREG_OFFSET_CAPTURE);
    $filename=$matches[1][0].".zip";
    // var_dump($filename);
    // set_time_limit(0);
    $zip = new ZipArchive();
    $zip->open($filename,ZIPARCHIVE::OVERWRITE);//return ;
    // var_dump($path);
    if (is_file($path)) {
        $path=preg_replace('/\/\//', '/', $path);
        $base_dir=preg_replace('/\/[\d\D][^\/]*$/', '/', $path);
        $base_dir=addcslashes($base_dir, '/:');

        $localname=preg_replace('/'.$base_dir.'/', '', $path);
        // var_dump($localname);
        $zip->addFile($path,$localname);
        // var_dump($path);
        $zip->close();
        return;
    }elseif (is_dir($path)) {
        $path=preg_replace('/\/[\d\D][^\/]*$/', '', $path);
        $base_dir=$path.'/';//基目錄
        $base_dir=addcslashes($base_dir, '/:');
        // var_dump($base_dir);
    }
    $path=preg_replace('/\/\//', '/', $path);
    // var_dump($path);
    function addItem($path,&$zip,&$base_dir){
        // var_dump($path);
        $handle = opendir($path);
        // var_dump($path);
        while (false !== ($file = readdir($handle))) {
            if (($file!='.')&&($file!='..')){
                // var_dump($file);
                $ipath=$path.'/'.$file;
                if (is_file($ipath)){//條目是文件
                    $localname=preg_replace('/'.$base_dir.'/', '', $ipath);
                    var_dump($localname);
                    $zip->addFile($ipath,$localname);
                    // var_dump($r);
                } else if (is_dir($ipath)){
                    addItem($ipath,$zip,$base_dir);
                    $localname=preg_replace('/'.$base_dir.'/', '', $ipath);
                    var_dump($localname);
                    $zip->addEmptyDir($localname);
                }
                // var_dump($path);
            }
        }
    }
    // var_dump($base_dir);
    addItem($path,$zip,$base_dir);
    $zip->close();
}
//調(diào)用方法
zip('解壓的目錄');

標(biāo)簽:

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:用pyinotify監(jiān)控文件系統(tǒng)示例

下一篇:在目錄下查找包含某字符串的文件的python代碼