如何修改以下通话,以便首先显示即将发生的事件。目前订单非常随机;我需要在顶部显示大多数当前事件,并且任何过去的事件都不应该显示...
<div class="events-links">
<?
include "eventbrite/Eventbrite.php";
$authentication_tokens = array('app_key' => 'APP_KEY',
'user_key' => 'USER_KEY');
$eb_client = new Eventbrite( $authentication_tokens );
$events = $eb_client->user_list_events();
?>
<span class="inspirational">Upcoming Events</span>
<?= Eventbrite::eventList( $events, 'eventListRow'); ?>
</div>
答案 0 :(得分:2)
如果您使用user_list_events
方法,则可以通过调整event_statuses
字段来过滤结果。有效选项包括:实时,已启动或已结束。仅显示即将发生的事件,例如:event_statuses=live
。
结果将显示从即将到来的最快事件到将来发生的事件。
答案 1 :(得分:1)
获取$events
后,使用usort
对数组进行排序。
usort :http://php.net/manual/en/function.usort.php
$events = $eb_client->user_list_events();
usort($events, function($a, $b) {
$adate = $a->start // or $a['date'] or $a->whatever it is
$bdate = $b->start // or $a['date'] or $a->whatever it is
if ($adate < $bdate) return -1;
if ($adate > $bdate) return 1;
return 0;
});
或者,如果您有帐户经理,可以与您联系。
(披露:我为EB竞争对手工作)