2013-03-26 24 views
0

如何修改以下電話以便即將發生的事件首先顯示。目前訂單非常隨意;我需要顯示在頂部和任何過去的事件不應展示最新的事件......要訂購eventbrite事件清單,以便即將發生的事件首先顯示

<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> 
  • 這些都不是我的令牌;我改變了他們之前發佈只是隨機字符:)
+1

我希望那些不是你的實際令牌:) – 2013-03-26 23:08:48

+0

'var_dump($ events)'看起來像什麼? – 2013-03-26 23:10:00

回答

1

你取$events後,使用usort給數組排序。

usorthttp://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競爭對手工作)

+0

此代碼發出錯誤,我已關閉錯誤日誌記錄,但 – Alex 2013-03-27 15:57:45

+0

好吧,它並不意味着按原樣工作。 – 2013-03-27 16:13:03

+0

不確定如何利用這一點;我的經驗是在前端開發(html/css/jquery/design);我不知道如何部署usort功能 – Alex 2013-03-27 17:03:50

2

如果您使用的user_list_events方法,您可以通過調整event_statuses場篩選結果。有效的選項包括:實時,開始或結束。僅顯示即將發生的事件,例如:event_statuses=live

結果將顯示從最近即將發生的事件發生到將來最遠的事件。

+0

謝謝 - 我在哪裏調整此字段(在我的代碼中) – Alex 2013-03-27 16:27:00

+0

您可以查看PHP客戶端的examples'目錄:https: //github.com/ryanjarvinen/eventbrite.php/blob/master/examples/attendee-list-example.php – brianz 2013-03-27 18:11:25

+0

這個例子在這裏是我粘貼在我的問題上面的確切代碼..... – Alex 2013-04-02 23:48:59