我试图按日期ASC对多维数组进行排序,但我遇到麻烦...所以我想问你们男女孩为什么会这样?
我的代码是(运行于:Codepad example):
$data = array (
array (
'date' => '2016-03-11 12:10:17',
'type' => '1'
),
array (
'date' => '2016-03-12 07:16:25',
'type' => '1'
),
array (
'date' => '2016-03-12 07:18:07',
'type' => '2'
),
array (
'date' => '2016-03-09 14:57:42',
'type' => '2'
),
array (
'date' => '2016-02-22 10:39:39',
'type' => '1'
)
);
usort($data, function($a, $b) {
return $a['date'] - $b['date'];
});
echo '<pre>';
var_dump($data);
问题是排序不好,我的意思是需要从2月到3月,而不是这样做,我找不到原因。
非常感谢任何帮助!
答案 0 :(得分:1)
使用文档中的排序:http://php.net/manual/en/function.usort.php
usort($data, function($a, $b) {
if ($a['date'] == $b['date']) {
return 0;
}
return ($a['date'] < $b['date']) ? -1 : 1;
});
答案 1 :(得分:1)