A PHP zip funkció használata exec nélkül
Szervereinken az exec PHP-függvény ki van kapcsolva, lásd: PHP-biztonság: letiltott függvények. Ezért a szerver zip és unzip programjait nem tudja meghívni. Erre nincs is szükség: a PHP saját ZipArchive osztállyal rendelkezik. Ezzel zip-fájlokat hozhat létre és csomagolhat ki.
Zip-fájl létrehozása
Mentse el ezt a kódot testzip.php néven, például a public_html mappába, majd nyissa meg a fájlt a böngészőjében:
<?php
$zip = new ZipArchive();
$bestand = __DIR__ . '/test.zip';
if ($zip->open($bestand, ZipArchive::CREATE) !== true) {
exit("Het lukt niet om $bestand te openen. Heeft de map schrijfrechten?");
}
$zip->addFile(__DIR__ . '/testzip.php', 'testzip.php');
echo 'Aantal bestanden in de zip: ' . $zip->numFiles;
$zip->close();
Zip-fájl kicsomagolása
<?php
$zip = new ZipArchive();
if ($zip->open(__DIR__ . '/test.zip') === true) {
$zip->extractTo(__DIR__ . '/uitgepakt');
$zip->close();
echo 'Uitgepakt';
} else {
echo 'Het zip-bestand kon niet worden geopend';
}
Nem működik? Ellenőrizze a Select PHP version menüben, hogy a zip bővítmény be van-e kapcsolva. Ha végzett, törölje a tesztszkriptet.
Csak egy Ön által feltöltött zip-fájlt szeretne kicsomagolni? Ez kód nélkül is megoldható a Fájlkezelőben, lásd: Zip-fájlt szeretnék feltölteni és kicsomagolni.
Részletes leírás képernyőképekkel: PHP-bővítmények be- és kikapcsolása a DirectAdmin-kézikönyvben.
