首頁 > 後端開發 > php教程 > Codeigniter 框架 Zip 编码类中 read_dir 方法的 bug_PHP教程

Codeigniter 框架 Zip 编码类中 read_dir 方法的 bug_PHP教程

WBOY
發布: 2016-07-21 14:58:19
原創
860 人瀏覽過

Codeigniter 框架的压缩解码类,其中的 read_dir 方法,允许你压缩一个服务器某处存在的文件夹(以及它里面的文件和子文件夹)。

提供一个文件夹路径,zip 类将递归读取它并重新创建添加到存档。 你所提供的路径下面的所有文件都会被压缩进来,也包括所有子文件夹。

例如:

$path = '/path/to/your/directory/';
$this->zip->read_dir($path);
登入後複製

默认 Zip 文件会把第一个参数的完整文件夹路径保存到Zip文件里。如果你想忽略目标路径之前的文件夹结构,你可以传递 FALSE (布尔值) 到第二个参数。

例如:

$path = '/path/to/your/directory/';
$this->zip->read_dir($path, false);
登入後複製

这将创建一个包括 “directory” 在内的 ZIP 文件, 所有的子文件夹被正确地保存在里面, 但是不包括此文件夹 /path/to/your.

官方文档只提到了两个参数,源码里其实设置了三个:

read_dir($path, $preserve_filepath = TRUE, $root_path = NULL)
登入後複製

而通常,在框架运行环境内部,取得路径有几种方法:

APPPATH – 对应 Codeigniter 根目录,即 application/
FCPATH – 对应磁盘分区根目录,即 <font face="NSimsun">D:\xxx\codeigniter 根目录\</font>

当使用 FCPATH 之类的方式获取目录绝对路径时,由于源码中处理了路径中反斜杠,导致前后 $root_path 值不一致,会出现第二参数 false 设置无效的问题。

参考资料:http://codeigniter.org.cn/user_guide/libraries/zip.html

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/363823.htmlTechArticleCodeigniter 框架的压缩解码类,其中的 read_dir 方法,允许你压缩一个服务器某处存在的文件夹(以及它里面的文件和子文件夹)。 提供一个...
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板