Сортировать массив дат с помощью функций usort () и sort () по метке времени, преобразованной функцией mktime ()
У меня есть массив дат, и я должен отсортировать его с помощью описанных функций.
Вот что у меня есть:
$dates = array ('10-10-2003', '2-17-2002', '2-16-2003','1-01-2005', '10-10-2004' );
function date_to_timestamp($d){
$newarr = array();
foreach($d as $f) {
$arr=explode("-",$f);
array_push($newarr, mktime(0,0,0,$arr[0],$arr[1],$arr[2]));
}
return $newarr;
}
function cmp2($a, $b)
{
if ($a == $b) {
return 0;
}
return ($a < $b) ? -1 : 1;
}
$third = date_to_timestamp($dates);
usort($third, "cmp2");
print_r($third);
?>
После этого я получаю сумасшедший вывод:
Array ([0] => 1013922000 [1] => 1045371600 [2] => 1065758400 [3] => 1097380800 [4] => 1104555600)
Где моя ошибка? Я буду признателен за любую помощь с решением.