如何修改下面的调用,使即将到来的事件首先显示。目前的顺序是非常随机的;我需要在顶部显示大多数当前事件,任何过去的事件都不应该显示…
<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>
- 这些不是我的代币;我在发布之前更改了它们,只是随机字符:)
如果您使用的是user_list_events
方法,您可以通过调整event_statuses
字段来过滤结果。有效的选项包括:live、started或ended。只显示即将发生的事件,例如:event_statuses=live
。
结果将显示从最近即将发生的事件到未来最远发生的事件。
获取$events
后,使用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竞争对手工作)