【发布时间】:2014-01-06 09:44:53
【问题描述】:
我有一张如下所示的表格:
_____________________________________________
NAME | VIEWS | COMMENTS| SUBSCRIBERS | VIDEOS
---------------------------------------------
X | 10 | 5 | 20 | 5
---------------------------------------------
Y | 50 | 10 | 10 | 5
---------------------------------------------
我的问题是,我如何将频道 Y 放在表的顶部,因为我将此表排序为具有最多视图的频道,我没有使用 MySQL。这是我的代码:
@foreach($data["statistics"]["members"] as $key =>$member)
@foreach($member["channels"] as $channel)
<tr>
<td>{= $channel["snippet"]["title"] =}</td>
<td>{= $channel["statistics"]["viewCount"] =}</td>
<td>{= $channel["statistics"]["commentCount"] =}</td>
<td>{= $channel["statistics"]["subscriberCount"] =}</td>
<td>{= $channel["statistics"]["videoCount"] =}</td>
</tr>
@endforeach
@endforeach
【问题讨论】:
-
您的源数组是
$data["statistics"]["members"],因此对其进行排序,或者将其复制到一个新数组中然后对其进行排序。您可以使用usort()。您也可以删除所有@,将它们放在foreach构造上是最不寻常的。 -
谢谢你,你能给我一个关于如何使用 usort() 的例子吗?我认为它需要两个数组,但我使用的 foreach 循环可能有两个以上的数组。
-
@foreach是刀片标记,是所有刀片模板的标准配置。这不是你想的那种 php 抑制剂 -
啊,好点 - 实际上,您的源数组是
$member["channels"]。 PHP 网站上有一个示例,但我会这样做:<?php foreach(channelSorter($member["channels"]) as $channel): ?>。然后您可以自己定义channelSorter($inArray)- 并返回一个排序数组。 -
@Chris,谢谢。最令人困惑!
标签: php laravel youtube-api