Thư mục giống như:
home/
file1.html
file2.html
Another_Dir/
file8.html
Sub_Dir/
file19.html
Tôi đang sử dụng cùng một lớp PHP Zip được sử dụng trong PHPMyAdmin http://trac.seagullproject.org/browser/bragets/0.6-bugfix/lib/other/Zip.php . Tôi không chắc về cách nén một thư mục hơn là chỉ một tệp. Đây là những gì tôi có cho đến nay:
$aFiles = $this->da->getDirTree($target);
/* $aFiles is something like, path => filetime
Array
(
[home] =>
[home/file1.html] => 1251280379
[home/file2.html] => 1251280377
etc...
)
*/
$zip = & new Zip();
foreach( $aFiles as $fileLocation => $time ){
$file = $target . "/" . $fileLocation;
if ( is_file($file) ){
$buffer = file_get_contents($file);
$zip->addFile($buffer, $fileLocation);
}
}
THEN_SOME_PHP_CLASS::toDownloadData($zip); // this bit works ok
nhưng khi tôi cố gắng giải nén tệp zip đã tải xuống tương ứng, tôi nhận được "hoạt động không được phép"
Lỗi này chỉ xảy ra khi tôi cố gắng giải nén trên máy Mac của mình, khi tôi giải nén qua dòng lệnh thì tệp giải nén được. Tôi có cần gửi một loại nội dung cụ thể khi tải xuống không, hiện tại là 'ứng dụng / zip'