以数组形式组织的 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 存档而不是文件

使用 Javascript 以 zip 或文件夹的形式下载多个文件?

以文本形式显示php数组

php 以数组形式访问对象

以PHP代码的形式输出/打印数组。

Cake PHP 连接查询以关联数组形式返回