以数组形式组织的 PHP Zip 存档
Posted
技术标签:
【中文标题】以数组形式组织的 PHP Zip 存档【英文标题】:PHP Zip Archive organized in a Array 【发布时间】:2010-03-06 14:33:11 【问题描述】:我正在尝试将 Zip 存档组织到一个数组中,以便我可以将某些文件提取到它们应有的位置。
Zip 包含 3 个文件夹,每个文件夹中包含可以根据扩展名提取的文件。
邮编 -> 文件夹 1
-----文件1
-----文件2
-----文件3
-> 文件夹 2
-----文件1
-----文件2
-> 文件夹 3
-----文件1
-----文件2
目前,文件夹以数字命名。
文件夹 1
文件夹 1.1
文件夹 2
但是,当我将它们放入循环中以将 statIndex 描述为数组时,该文件夹在数组中重新排列如下:
array[0] = 文件夹 1
数组[1] = 文件夹 2
数组[2] = 文件夹 1.1
我正在尝试对 statIndex 进行排序,以便文件夹 1.1 出现在文件夹 1 之后,然后在文件夹 1.1 之后出现文件夹 2。
数组的键对于组织数据很重要,因此我需要帮助对 statIndex 进行排序。因此:
array[0] = 文件夹 1
array[1] = 文件夹 1.1
数组[2] = 文件夹 2
非常感谢您的帮助。
我的代码:http://pastebin.com/6VRvWPqr
【问题讨论】:
【参考方案1】:您可以使用 natsort 对数组进行排序。
<?php
$values = array('Folder 1', 'Folder 2', 'Folder 1.1');
// Unordered.
print_r($values);
// Sort the values.
natsort($values);
// Ordered
print_r($values);
输出
Array
(
[0] => Folder 1
[1] => Folder 2
[2] => Folder 1.1
)
Array
(
[0] => Folder 1
[2] => Folder 1.1
[1] => Folder 2
)
【讨论】:
以上是关于以数组形式组织的 PHP Zip 存档的主要内容,如果未能解决你的问题,请参考以下文章
Tomcat:WebService 响应为 zip 存档而不是文件