【发布时间】:2016-02-07 23:20:50
【问题描述】:
通常,以下用于创建和填充 zip 存档的脚本可以在本地主机和其他服务器上正常工作:
$zip = new ZipArchive();
$zip->open($filename, ZipArchive::CREATE);
foreach( $pathToAssets as $nPath ) {
$files = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator( $nPath ), RecursiveIteratorIterator::LEAVES_ONLY
);
foreach ($files as $name => $file) {
if( $file->getFilename() != '.' && $file->getFilename() != '..' ) {
$filePath = $file->getRealPath();
$temp = explode("/", $name);
array_shift( $temp );
$nName = implode("/", $temp);
$zip->addFile($filePath, $nName);
}
}
}
$zip->close()
但在我的新服务器中,这个脚本不是创建文件夹、子文件夹和文件,而是只创建名称为“folder\subfolder\file.extension”的文件
例如: 它不是使用包含 style.css 文件的引导子文件夹创建 css 文件夹,而是创建一个名为“css\bootstrap\style.css”的文件
我不知道在服务器上的何处采取行动来改变这种行为。 你对我有什么建议吗?
谢谢
【问题讨论】:
标签: php zip ziparchive php-zip-archive