【发布时间】:2011-11-03 15:49:15
【问题描述】:
所以我不确定标题是否最合适,但数组如下所示:
array (
[0] => array (
[category] => 'Value_1'
[date] => '01/01/2011'
[data] => 'A'
)
[1] => array (
[category] => 'Value_3'
[date] => '01/01/2000'
[data] => 'B'
)
[2] => array (
[category] => 'Value_2'
[date] => '01/01/2011'
[data] => 'D'
)
[3] => array (
[category] => 'Value_2'
[date] => '01/01/2010'
[data] => 'A'
)
[4] => array (
[category] => 'Value_2'
[date] => '01/01/2011'
[data] => 'C'
)
)
我希望这些数据的排序方式如下:
- 保留类别的顺序
- 在类别中,按日期 DESC 排序
- 如果日期出现多次,则按数据的字母顺序 ASC 排序
然后示例数组将被排序为array ([0], [1], [4], [2], [3]),更具体地说:
array (
[0] => array (
[category] => 'Value_1'
[date] => '01/01/2011'
[data] => 'A'
)
[1] => array (
[category] => 'Value_3'
[date] => '01/01/2000'
[data] => 'B'
)
[2] => array (
[category] => 'Value_2'
[date] => '01/01/2011'
[data] => 'C'
)
[3] => array (
[category] => 'Value_2'
[date] => '01/01/2011'
[data] => 'D'
)
[4] => array (
[category] => 'Value_2'
[date] => '01/01/2010'
[data] => 'A'
)
)
我的问题是我知道我需要usort 和/或array_multisort(),但我不确定如何有效地遍历循环以便按照我给出的标准进行排序。
【问题讨论】:
-
你能告诉我们上面数组的期望输出吗?
-
我继续并添加了一些清晰度。