如何对多维PHP数组进行排序(最近新闻基于时间的实现)
How to sort multidimensional PHP array (recent news time based implementation)
我得到了一些 xml 格式的近期新闻 rss 并更改为 json 格式,android 应用程序需要它来显示近期新闻。我有一个以下 JSON 数组 ...
{
"rss_news": [
{
"title": " ",
"rss_original_src": "recent_news1(google news)",
"rss_original_src_img": "",
"link": "",
"pubDate": "Tue, 19 Apr 2016 14:05:47 +0530",
"description": ""
},
{
"title": " ",
"rss_original_src": "recent_news2(yahoo news)",
"rss_original_src_img": "",
"link": "",
"pubDate": "Tue, 19 Apr 2016 16:05:47 +0530",
"description": ""
},
{
"title": " ",
"rss_original_src": "recent_news3",
"rss_original_src_img": "",
"link": "",
"pubDate": "Tue, 19 Apr 2016 11:05:47 +0530",
"description": ""
},
....
]
}
现在我需要...PHP 基于值(pubDate) 的多维数组排序..
提前致谢..
首先使用 json_decode
.
将 JSON 字符串转换为 PHP 数组
使用usort对数组进行排序。
usort($array, 'sortByDate');
function sortByDate($a, $b) {
$date1=$a['pubDate'];
$date2=$b['pubDate'];
//return value based on above two dates.
}
我得到了一些 xml 格式的近期新闻 rss 并更改为 json 格式,android 应用程序需要它来显示近期新闻。我有一个以下 JSON 数组 ...
{
"rss_news": [
{
"title": " ",
"rss_original_src": "recent_news1(google news)",
"rss_original_src_img": "",
"link": "",
"pubDate": "Tue, 19 Apr 2016 14:05:47 +0530",
"description": ""
},
{
"title": " ",
"rss_original_src": "recent_news2(yahoo news)",
"rss_original_src_img": "",
"link": "",
"pubDate": "Tue, 19 Apr 2016 16:05:47 +0530",
"description": ""
},
{
"title": " ",
"rss_original_src": "recent_news3",
"rss_original_src_img": "",
"link": "",
"pubDate": "Tue, 19 Apr 2016 11:05:47 +0530",
"description": ""
},
....
]
}
现在我需要...PHP 基于值(pubDate) 的多维数组排序..
提前致谢..
首先使用 json_decode
.
使用usort对数组进行排序。
usort($array, 'sortByDate');
function sortByDate($a, $b) {
$date1=$a['pubDate'];
$date2=$b['pubDate'];
//return value based on above two dates.
}