У меня есть Multidimensional
массив, который я пытаюсь лихорадочно сортировать по дате.
Пока у меня есть:
usort($respArr, function($a, $b){ $t1 = strtotime($a['PublishDate']); $t2 = strtotime($b['PublishDate']); return $t1 - $t2; }); array_reverse($respArr); echo '<pre>'; print_r($respArr); echo '</pre>'; echo '<hr />';
Вот некоторые из вышесказанного:
Array ( [34] => Array ( [Title] => o7thwd: Partnered with Internet Services Inc., to offer complete online presence! http://t.co/1SgAF66Tbf @ISI_Cloud [Link] => http://twitter.com/o7thwd/statuses/306088158574022656 [PublishDate] => 2/25/2013 12:07:58 PM [Image] => [Description] => o7thwd: Partnered with Internet Services Inc., to offer complete online presence! http://t.co/1SgAF66Tbf @ISI_Cloud ) [35] => Array ( [Title] => o7thwd: Hangin with Mama Bear giving her the basics of social networking [Link] => http://twitter.com/o7thwd/statuses/307916797066240000 [PublishDate] => 3/2/2013 1:14:19 PM [Image] => [Description] => o7thwd: Hangin with Mama Bear giving her the basics of social networking ) [36] => Array ( [Title] => o7thwd: o7th Web Design Articles http://t.co/plP8OkB7So [Link] => http://twitter.com/o7thwd/statuses/308687737400205313 [PublishDate] => 3/4/2013 4:17:46 PM [Image] => [Description] => o7thwd: o7th Web Design Articles http://t.co/plP8OkB7So ) [37] => Array ( [Title] => o7thwd: finished up my GUI for a YUI minifier: http://t.co/7DKLoCXJHw [Link] => http://twitter.com/o7thwd/statuses/309309871931682816 [PublishDate] => 3/6/2013 9:29:54 AM [Image] => [Description] => o7thwd: finished up my GUI for a YUI minifier: http://t.co/7DKLoCXJHw ) [38] => Array ( [Title] => o7thwd: o7th Web Design Articles http://t.co/QAIUO2Qjko [Link] => http://twitter.com/o7thwd/statuses/314356123027243008 [PublishDate] => 3/20/2013 8:41:54 AM [Image] => [Description] => o7thwd: o7th Web Design Articles http://t.co/QAIUO2Qjko ) [39] => Array ( [Title] => SkorIn2: starting new desktop app to compliment the web app [Link] => http://twitter.com/SkorIn2/statuses/314718985725804545 [PublishDate] => 3/21/2013 8:43:48 AM [Image] => [Description] => SkorIn2: starting new desktop app to compliment the web app ) )
Однако массив не обратный , как вы можете сказать выше. Кто-нибудь может мне с этим помочь?
Это показывает мне, что массив действительно отсортирован по «PublishDate», однако, в обратном порядке, в котором он мне нужен.
Фактическая проблема заключается в том, что вы не присваиваете результат array_reverse
ни к чему
// change this array_reverse($respArr); // to this $respArr = array_reverse($respArr);
Попробуй это :
$arr = your array; $sort = array(); foreach($arr as $k=>$v) { $sort['PublishDate'][$k] = $v['PublishDate']; } array_multisort($sort['PublishDate'], SORT_DESC, $arr); echo "<pre>"; print_r($arr);
Но сделайте свою дату предварительно сформированной, иначе это может не сработать. отформатируйте его до yyyy-mm-dd hh:mm:ss