我的php代码中有以下数组格式:
foreach ($events as $info) {
$events_array[] = array(
'title' => $info->Name,
'date' => $info->Date
);
}
function cb($a, $b) {
return strtotime($a['date']) - strtotime($b['date']);
}
usort($events_array, 'cb');
编辑:日期值的格式为:YYYY-MM-DD
实际上,当我做print_r时,我得到了
[title] => SimpleXMLElement Object ( ) [date] => SimpleXMLElement Object ( )
答案 0 :(得分:12)
您必须创建自己的多列排序功能(因为您的数组是二维的):
array_sort_by_column($events_array, 'date');
var_dump($events_array);
排序功能:
function array_sort_by_column(&$array, $column, $direction = SORT_ASC) {
$reference_array = array();
foreach($array as $key => $row) {
$reference_array[$key] = $row[$column];
}
array_multisort($reference_array, $direction, $array);
}
答案 1 :(得分:0)