PHP ir kaip išpakuoti ZIP archyvą
Interneto agentūra » Skaitmeninės naujienos » PHP: kaip išspausti ZIP archyvą

PHP: kaip išspausti ZIP archyvą

Išpakuokite ZIP archyvą

Šiandien, kai ieškote, kaip išspausti ZIP archyvą PHP programoje Google, pirmoje pozicijoje rasite PECL bibliotekos ištraukimo funkcijas. Bet ar neįmanoma išskleisti šio standartinio formato, nenaudojant trečiosios šalies bibliotekos? ar! Būtent šį sprendimą jums rekomenduoju. Ir tai dėl daugelio priežasčių:

  • Jokių papildomų bibliotekų.
  • Funkcionalumas jau integruotas.
  • Bendras funkcionalumas visose platformose, kuriose PHP 4 >= 4.1.0 arba PHP 5 >= 5.1.0
  • Lengva įdiegti dėka apt-get Linux vartotojams arba įvairių mokymo programų, skirtų kitoms platformoms.
  • Apribokite kodo dubliavimą, nes reikia pasakyti, kad PECL API gali būti lengviau suprasti kodą, kurį sakysime „žemo lygio“ yra tas pats, nesvarbu, ar naudojamės vietiniu PHP, ar PECL ZipArchive.

Scenarijus

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
funkcija išpakuokite($path_zip, $tmp_folder = „/tmp/“)
{
$visi_failai = masyvas();
$zip = zip_open($path_zip);
if ($zip) {
$stream = zip_read($zip);
o ($stream) {
var_dump($zip_name);
$zip_name = zip_entry_name($stream);
$kelias_failas_unzip = $tmp_aplankas.$zip_name;
$dir_folder = substr($path_file_unzip, 0, strrpos($path_file_unzip, "/"));
mkdir($dir_folder, 0777, tiesa);
$fp = fopen($path_file_unzip, "w");
masyvas_push($visi_failai, $kelias_failo_išpakavimas);
if (zip_entry_open($zip, $stream, "r")) {
$buf = zip_entry_read($stream, zip_entry_filesize($stream));
fwrite($fp, „$buff“);
zip_entry_close($srautas);
fclose($fp);
}
$stream = zip_read($zip);
}
zip_close($zip);
}
grįžti $visi_failai;
}

★ ★ ★ ★ ★