1 | <?php |
||
17 | final class ZipFactory |
||
18 | { |
||
19 | /** |
||
20 | * Comprime el contenido del archivo con el nombre especifico y retorna el contenido del zip. |
||
21 | * |
||
22 | * @param string $filename |
||
23 | * @param string $content |
||
24 | * @return string |
||
25 | */ |
||
26 | 38 | public function compress($filename, $content) |
|
33 | |||
34 | /** |
||
35 | * Retorna el contenido del archivo especificado dentro del zip. |
||
36 | * |
||
37 | * @param string $zipContent |
||
38 | * @param string $fileToExtract |
||
39 | * @return string |
||
40 | */ |
||
41 | public function decompress($zipContent, $fileToExtract) |
||
42 | { |
||
43 | $temp = tempnam(sys_get_temp_dir(),time() . '.zip'); |
||
44 | file_put_contents($temp, $zipContent); |
||
45 | $zip = new ZipArchive; |
||
46 | $output = ""; |
||
47 | if ($zip->open($temp) === true) { |
||
48 | $output = $zip->getFromName($fileToExtract); |
||
49 | } |
||
50 | $zip->close(); |
||
51 | unlink($temp); |
||
52 | |||
53 | return $output; |
||
54 | } |
||
55 | |||
56 | /** |
||
57 | * Retorna el contenido del ultimo archivo dentro del zip. |
||
58 | * |
||
59 | * @param string $zipContent |
||
60 | * @return string |
||
61 | */ |
||
62 | 16 | public function decompressLastFile($zipContent) |
|
76 | } |