我有这个 Javascript,它从 Google API 服务器接收 JSON,然后输出内容(请注意,为了清楚起见,我的代码已被简化):
function init() {
gapi.client.setApiKey('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');
gapi.client.load('blogger', 'v2', function() {
var request = gapi.client.blogger.posts.list({
'blogId': 'xxxxxxxxxxxxxxxxxxxxxxx',
'fields': 'items(content,title)'
});
request.execute(function(response) {
for (var i = 0; i < response.items.length; i++)
{
$(aDiv).append(response.items[i].title);
}
});
});
}
我有这个 PHP 代码,它基本上做同样的事情:
$recentBlog = json_decode(file_get_contents("https://www.googleapis.com/blogger/v3/blogs/xxxxxxxxxxxxxxxxxxxxxx/posts?key=xxxxxxxxxxxxxxxxx"), true);
foreach ($recentBlog['items'] as $item)
{
echo $item[`title`];
}
问题是每个代码的输出顺序不同。Javascript 按从上到下的顺序输出到页面2, 1, 0
。PHP 从上到下依次是0, 1, 2
. 我需要的是“最新”项目位于顶部,所以我需要两者都位于,按从上到下的顺序,2, 1, 0
.
除了调用 JSON 数据的不同方法(我假设它们会返回完全相同的响应)之外,似乎唯一真正的区别是一种是for()
循环,另一种是foreach()
循环。我看不出这会有什么不同,所以我肯定还缺少其他东西。
不管是什么原因,在我目前的情况下,我需要 PHP 符合 Javascript 的顺序,以便最近的在页面顶部。或者,换句话说,从上到下,2, 1, 0
。我怎样才能做到这一点?