- Array
- (
- [0] => Array
- (
- [dateTime] => 2011-10-18 0:0:00
- [chanl1] => 20.7
- [chanl2] => 45.4
- [chanl3] =>
- )
- [1] => Array
- (
- [dateTime] => 2011-10-18 0:15:00
- [chanl1] => 20.7
- [chanl2] => 45.4
- [chanl3] =>
- )
- [2] => Array
- (
- [dateTime] => 2011-10-18 00:14:00
- [chanl1] => 20.7
- [chanl2] => 33.8
- [chanl3] =>
- )
- [3] => Array
- (
- [dateTime] => 2011-10-18 00:29:00
- [chanl1] => 20.6
- [chanl2] => 33.9
- [chanl3] =>
- )
我想根据[dateTime]对上述数组进行排序,最终的输出应该是:
- Array
- (
- [0] => Array
- (
- [dateTime] => 2011-10-18 0:0:00
- [chanl1] => 20.7
- [chanl2] => 45.4
- [chanl3] =>
- )
- [1] => Array
- (
- [dateTime] => 2011-10-18 00:14:00
- [chanl1] => 20.7
- [chanl2] => 33.8
- [chanl3] =>
- )
- [2] => Array
- (
- [dateTime] => 2011-10-18 0:15:00
- [chanl1] => 20.7
- [chanl2] => 45.4
- [chanl3] =>
- )
- [3] => Array
- (
- [dateTime] => 2011-10-18 00:29:00
- [chanl1] => 20.6
- [chanl2] => 33.9
- [chanl3] =>
- )
有没有人知道怎么做?谢谢!
使用
usort()
function与自定义变体:
- $arr = array(...);
- usort($arr,function($a,$b) {
- $ad = new DateTime($a['dateTime']);
- $bd = new DateTime($b['dateTime']);
- if ($ad == $bd) {
- return 0;
- }
- return $ad < $bd ? -1 : 1;
- });
DateTime类具有超载比较运算符(<> ==).