php下载文件夹
作者:野牛程序员:2023-11-13 17:18:14python阅读 2634
使用PHP下载整个文件夹可以通过创建一个Zip压缩文件并提供其下载链接来实现。以下是一个简单的PHP脚本,演示如何完成这个任务:
<?php function zipFolder($folder, $zipFile) { $zip = new ZipArchive(); if ($zip->open($zipFile, ZipArchive::CREATE | ZipArchive::OVERWRITE) !== TRUE) { exit("无法创建或打开 Zip 文件"); } $files = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($folder), RecursiveIteratorIterator::LEAVES_ONLY ); foreach ($files as $name => $file) { if (!$file->isDir()) { $filePath = $file->getRealPath(); $relativePath = substr($filePath, strlen($folder) + 1); $zip->addFile($filePath, $relativePath); } } $zip->close(); } $folderToZip = '/path/to/your/folder'; // 你要压缩的文件夹路径 $zipFileName = 'downloaded_folder.zip'; // 压缩文件的名称 zipFolder($folderToZip, $zipFileName); // 设置响应头,告诉浏览器返回一个Zip文件 header('Content-Type: application/zip'); header('Content-disposition: attachment; filename=' . $zipFileName); header('Content-Length: ' . filesize($zipFileName)); readfile($zipFileName); // 删除临时生成的Zip文件 unlink($zipFileName); ?>
请注意,需要将/path/to/your/folder
替换为要下载的实际文件夹的路径。此脚本将文件夹压缩为一个Zip文件,然后将该Zip文件提供给用户进行下载。在提供下载链接后,脚本会删除临时生成的Zip文件,以避免占用服务器空间。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:php 压缩文件夹
- 下一篇:php读取目录下所有文件