Helper Zip.
Funciones para validar datos enformato Zip

Code Helper

Helpers – Zip – Datos comprimidos Zip

La compresión de datos puede suponer una mejora en el rendimiento de la carga de datos. Mediante esta librería, podremos comprimir y descomprimir los datos que se envían al navegador.

Tambiém podemos zipear archivos para que no ocupen tanto espacio en el servidor

Utiliza la función gzcompress y los datos son tratados en base64.

/**
 * HelperZip.php
 * @author      Code Develium
 */

namespace Helpers;

/**
 * Class HelperZip
 */
abstract class HelpZip
{
    /**
     * Comprime una archivo mediante el zip.exe del ordenador
     *
     * @param $fileName
     * @param $fileOut
     */
    public static function zipToFile($fileName, $fileOut)
    {
        //$fileName = "filename.zip";
        echo system("zip -P 1234 -j {$fileName} \"{$fileOut}\"");
    }

    /**
     * Devuelde un valor encriptado y zipado o null si no puede
     *
     * @param $mixed
     *
     * @return string|null
     */
    public static function zipComprimir($mixed)
    {
        // añadir composer
        $ret = gzcompress(base64_encode(serialize($mixed)), 9);
        if (false === $ret) {
            return null;
        }
        return $ret;
    }

    /**
     * Descomprime un string encriptado y zipado o null si no puede
     *
     * @param $sZip
     *
     * @return string|null
     */
    public static function zipDescomprimir($sZip)
    {
        $ret = gzuncompress($sZip);
        if (false === $ret) {
            return null;
        }
        return unserialize(base64_decode($ret));
    }
}