Imágenes descarga de embalaje de compresión por lotes

    downloadZipImg función pública (picAllArr $, $ enterprise_id) 
    { 
// $ picAllArr = [ 
// 'https://dss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2333857494,1212940832&fm=26&gp=0.jpg', 
// ' https://dss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3808706043,3843571795&fm=26&gp=0.jpg ' 
//]; 

        $ TMPDIR =' ./static/zip/images/ '; // / www similares / public / Subir / 

        SI {(los file_exists ($ TMPDIR)!) 
            // Crea una carpeta 
            mkdir ($ TMPDIR, 0777, true); 
        } 

        // zipName = FECHA $ ( 'His') del mt_rand (1000, 9999) .. '.zip '; // nombre de archivo de almacenamiento 
        $ = $ zipName enterprise_id' .zip' .;
        . $ ZipNameUrl = $ $ TMPDIR zipName ; // ruta del archivo

        // borrar archivos comprimidos para 
        unlink ($ zipNameUrl); // eliminar un archivo 


        de archivos generados // 
        $ = new nueva postal \ ZipArchive (); 
        SI (zip - $> Abrir ($ zipNameUrl, \ ZipArchive :: SOBRESCRIBIR) ==! true) { 
            // sobrescribir parámetro anula el archivo de almacenamiento ya debe existir 
            SI (zip - $> Abrir ($ zipNameUrl, \ :: ZipArchive el CREATE)! == true) { 
                // el archivo no existe, crear una nueva los archivos se abren mediante los archivos de contenido adicional a la CREATE postal 
                regreso de descarga falla, la carpeta no existe '; 
            } 
        } 
        foreach ($ $ presentar picAllArr AS) { 
            // determina si hay imagen 
            $ isFile = $ this-> checkFileExists ( $ archivo ); 
            if ($ isFile) {! 
                el Continuar; 
            } 
            // rastreo contenido gráfico
            file_get_contents fileContent = $ ($ archivo); 
            // Añadir imagen 
            $ Archivo = substr ($ archivo, 0, -13); 
            $ zip-> AddFromString (el nombre base ($ archivo), $ fileContent); 
        } 
        // Se cierra 
        $ zip- > Close (); 

        // ningún archivo 
        SI {(file_exists ($ zipNameUrl)!) 
            de retorno 'fallado la descarga, la imagen no existe o no se puede descargar'; 
        } 

// cabecera ( "Cache-control: pública"); 
// cabecera ( "Content-la Descripción: Transferencia de archivos"); 
// cabecera ( 'Content-Disposition: attachment; filename =' $ zipName); // nombre de archivo. 
// header ( "Content-Type: application / zip"); // formato zip 
// // header ( "Content-Type :application / octet-stream "); // formato zip
// cabecera ( "Content-Transfer- Encoding: binary"); // decirle al navegador, que es un archivo binario
cabecera // ( 'Content-Length: '. Tamaño del archivo ($ zipNameUrl)); // indica al navegador, tamaño del archivo 
// 
// // los siguientes dos pasos debe ser 
// ob_clean (); 
// flush (); 
        / / @ ReadFile ($ zipNameUrl); 
        // unlink ($ zipNameUrl); // eliminar el archivo 
        substr retorno ($ zipNameUrl, 2); 
    }

  

Supongo que te gusta

Origin www.cnblogs.com/zxqblogrecord/p/12620350.html
Recomendado
Clasificación