以下脚本从我的数据库中提取图像文件并创建一个zip文件。由于某种原因,它错过了查询的第一个文件,print_r在那里向我展示它是什么样的压缩,并且在每个场合[0] => myfile.jpg实际上是第二个文件而不是第一个。
谁知道为什么?//create an empty array
$file_names = array();
//fetch the names from database
while ($row_rsParentGal = mysql_fetch_assoc($rsParentGal))
{
//Add the values to the array
$file_names[] = $row_rsParentGal['filename'];
}
print_r ($file_names);
// instantate object
$zip = new ZipArchive();
// create and open the archive
if ($zip->open("$zipfilename", ZipArchive::CREATE) !== TRUE) {
die ("Could not open archive");
}
// add each file in the file list to the archive
foreach($file_names as $files)
{
$zip->addFile($sourcefolder.$files, $files);
// uncomment to show list of files added to archive on results page
echo $sourcefolder.$files."<br />";
}
$zip->close();