【发布时间】:2012-07-23 21:23:12
【问题描述】:
在 PHP 中有一个数组。就是这样设置的
$array_var = array(array(1,2,3,4), array(5,6,7,8), array(3,5,3,9));
此数组来自使用 fgetcsv 函数获得的 csv 文件。如果我要正确地回显数组以显示其内容,我会使其显示如下:
field1 field2 field3 field4
1 2 3 4
5 6 7 8
3 5 3 9
等等等等。
现在我想对这个数组进行排序。但我只想对所有数组中的一列进行排序。换句话说,例如,我想在主数组中的每个数组中取第三个值,并按字母顺序升序列出它们。因此,对于特定情况,我们将从上表中取出 field3 中的每个值,并对其进行排序。并且还要做到这一点,以便排序的最终结果将重新排列列,以便它们与它们的值正确对齐。
最终结果
field1 field2 field3 field4
1 2 3 4
3 5 3 9
5 6 7 8
等等等等。
如何做到这一点?
挑战的原因是我试图从 csv 文件的单个列中删除重复项。我认为最快的方法是对值进行排序并在范围内查找匹配项。
【问题讨论】:
-
我就离开it这里
-
您输入输出的数据不匹配。 5 没了,你还有 1 吗?
-
我完全了解array_multisort!请通读我的帖子并仔细了解我的问题。 array_multisort 对多维数组的所有值进行排序。我只希望对数组的每个第 n 个值进行排序,并将所有其他值对齐。阅读倒数第二段并查看底部示例以获取更多信息。
-
谢谢 Fluffeh 让我解决这个问题。
标签: php arrays algorithm sorting multidimensional-array