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

WBOY
Lepaskan: 2016-07-21 14:58:19
asal
853 orang telah melayarinya

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

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

例如:

$path = '/path/to/your/directory/';
$this->zip->read_dir($path);
Salin selepas log masuk

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

例如:

$path = '/path/to/your/directory/';
$this->zip->read_dir($path, false);
Salin selepas log masuk

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

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

read_dir($path, $preserve_filepath = TRUE, $root_path = NULL)
Salin selepas log masuk

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

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 方法,允许你压缩一个服务器某处存在的文件夹(以及它里面的文件和子文件夹)。 提供一个...
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan