我有一个
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