[英]PHP zip from file
嘗試從kml文件創建kmz文件。 該腳本上周工作正常,但不知何故停止了工作。 我正在嘗試通過創建一個包含.kml文件的.zip文件來解決此問題。
過程如下:1.創建Kml文件2.添加.zip文件3.根據名稱將kml文件添加到zip 4.保存.zip
問題是,當我打開目錄時,.zip包含的內容看起來像.kml文件的文件結構,而不僅僅是文件。
例如,如果.kml位於c:/ foldera / folderb內部。 壓縮文件應包含c:/ foldera / folderb / kml。
$zip = new ZipArchive();
$zip_name = $_SERVER['DOCUMENT_ROOT'] .'/assets/kml'. "/r".$r.".zip";
$filename = $_SERVER['DOCUMENT_ROOT'] .'/assets/kml'. "/r".$r.".kml";
$zip->open($zip_name, ZIPARCHIVE::CREATE);
$zip->addFile($filename);
$zip->close();
unlink($_SERVER['DOCUMENT_ROOT'] .'/assets/kml'. "/r".$r.".kml");
由於某些原因,您有兩個addfile:
$zip->addFile($filename, ltrim($filename, '/'));
$zip->addFile($filename);
嘗試用以下內容替換這兩行:
$zip->addFile($filename, basename($filename));
basename()
只返回文件名,去掉路徑- http://www.php.net/manual/en/function.basename.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.