Joomla 版本 = 2.5.6
服务器 = Wamp 服务器
PHP = 5.3.8
我终于弄清楚了如何使用以下代码压缩文件和数组:
$filesArray = array();
$archivename = JPATH_SITE.'/'.'modules'.'/'.'mod_module_gen'.'/'.'package'.'/'.$new_folder_name.'/'.$new_folder_name.'.zip';
$excludes = array('.svn', '.zip','.DS_Store','__MACOSX','CVS');
$files = JFolder::files(JPATH_SITE.'/'.'modules'.'/'.'mod_module_gen'.'/'.'package'.'/'.$new_folder_name, null, true, true, $excludes);
foreach($files as $file)
{
$data = JFile::read($file);
$filesArray[] = array('name' => $file, 'data' => $data);
}
$zip =& JArchive::getAdapter('zip');
$zip->create($archivename, $filesArray);
但是,如果不只是将文件压缩到创建的文件夹中,它会压缩文件数组前导的所有文件夹。
/wamp/www/joomjunk/modules/mod_module_gen/package/$new_folder_name/files
$new_folder_name
= 用户定义名称
它应该只压缩,如下所示:
$new_folder_name/files
代码中是否有我做错的地方或丢失的东西导致它也压缩所有以前的文件夹?任何帮助将不胜感激。问候