在PHP中,你可以使用ZipArchive類來壓縮文件夾。以下是一個簡單的示例代碼:
$zip = new ZipArchive();
$zipFileName = 'compressed.zip';
if ($zip->open($zipFileName, ZipArchive::CREATE) === TRUE) {
$dir = 'folder_to_compress';
$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir));
foreach ($files as $file) {
if (!$file->isDir()) {
$filePath = $file->getRealPath();
$relativePath = substr($filePath, strlen($dir) + 1);
$zip->addFile($filePath, $relativePath);
}
}
$zip->close();
echo 'Folder compressed successfully.';
} else {
echo 'Failed to compress folder.';
}
在這個示例中,我們首先創建了一個ZipArchive對象,然后打開一個新的zip文件。我們使用RecursiveIteratorIterator和RecursiveDirectoryIterator來遍歷文件夾中的所有文件,并將它們添加到zip文件中。最后,我們關閉zip文件并輸出相應的消息。
請注意,你需要確保你的PHP環境支持ZipArchive擴展。