ZipArchive::extractTo()
ZipArchive::extractTo
(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)
ZipArchive::extractTo — Extrahera innehållet i arkivet
Beskrivning
public ZipArchive::extractTo(string $pathto, array|string|null $files = null): bool Extraherar hela arkivet eller de angivna filerna till den angivna destinationen.
Varning De standardbehörigheter som tilldelas extraherade filer och kataloger ger den största möjliga åtkomst. Detta kan begränsas genom att ändra den aktuella umask, vilket kan göras med funktionen umask().
Av säkerhetsskäl återställs inte de ursprungliga behörigheterna. För ett exempel på hur man återställer dem, se kodexemplet på sidan ZipArchive::getExternalAttributesIndex().
Parametrar
- $pathto
Plats där filerna ska extraheras.
- $files
De poster som ska extraheras. Det accepterar antingen ett enskilt namn på en post eller en array med namn.
Returvärden
Returnerar true vid framgång eller false vid misslyckande.
Exempel
Exempel #1 Extrahera alla poster
<?php $zip = new ZipArchive; if ($zip->open('test.zip') === TRUE) { $zip->extractTo('/my/destination/dir/'); $zip->close(); echo 'ok'; } else { echo 'failed'; } ?>
Exempel #2 Extrahera två poster
<?php $zip = new ZipArchive; $res = $zip->open('test_im.zip'); if ($res === TRUE) { $zip->extractTo('/my/destination/dir/', array('pear_item.gif', 'testfromfile.php')); $zip->close(); echo 'ok'; } else { echo 'failed'; } ?>
Noter
Notera: Windows NTFS-filsystem stödjer inte vissa tecken i filnamn, nämligen <|>*?":. Filnamn med en avslutande punkt stöds inte heller. I motsats till vissa extraheringsverktyg ersätter inte denna metod dessa tecken med ett understreck, utan den misslyckas med att extrahera sådana filer.