since
UNIXタイムスタンプを受け入れるクエリパラメータを使用して、Facebookから返されるデータを制限して、特定の日付以降に作成されたイベントのみを表示することができます。
したがって、2012年10月8日以降に作成されるイベントが必要な場合は、クエリパラメータを使用して呼び出しを行うことができsince
ます。この場合、UNIXタイムスタンプは08 Oct 2012 00:00:00 GMT
になります1349654400
。
since
ここで、クエリパラメータと上記のUNIXタイムスタンプを使用して呼び出しを行うと、2012年10月8日以降に作成されたすべてのイベントが返されます。
これは、クエリパラメータを使用してGraphAPIExplorerで行われた動作中の呼び出しです。since
上記のリンクが機能しない場合:
https://developers.facebook.com/tools/explorer?method=GET&path=jarnvags%2Fevents%3Fsince%3D1349654400
パス:jarnvags / events?since = 1349654400
これがあなたを助けたかどうか私に知らせてください:)
編集:FQL
でそれを行う方法は次のとおりです:
SELECT eid, name, description, pic_big, start_time, end_time, location FROM event WHERE creator = 109341359096369 AND eid IN (SELECT eid FROM event_member WHERE uid = 109341359096369) AND start_time >= now() ORDER BY start_time
そして、PHPでそれを行う方法は次のとおりです。
$pageID = '109341359096369';
$fql = 'SELECT eid, name, description, pic_big, start_time, end_time, location FROM event WHERE creator = ' . $pageID . ' AND eid IN (SELECT eid FROM event_member WHERE uid = ' . $pageID . ') AND start_time >= now() ORDER BY start_time';
$ret_obj = $facebook->api(array(
'method' => 'fql.query',
'query' => $fql,
));
print_r($ret_obj);
https://developers.facebook.com/docs/reference/fql/event/event
で表FQLドキュメントを確認してください。
編集2:コメントで以下のcpilkoの指摘を強調したかったので、将来この回答を見た人が簡単に気付くことができます。日付をタイムスタンプに変換する必要はありません。日付だけでも機能します(2012-10-08
)。
そして、これEvents Timezone Migration Note
がFacebookのイベントドキュメントからの引用です:
イベントタイムゾーン移行に関する注意
「イベントタイムゾーン」の移行以降、すべてのイベント時間は常にISO-8601形式の文字列です。'date_format'クエリ文字列修飾子は効果がなくなりました。イベントのタイプに応じて、次の形式が返されるようになりました。
日付のみ(例:「2012-07-04」):日付はあるが特定の時刻がまだないイベント。正確な時間(例: '2012-07-04T19:00:00-0700'):UTCからの特定のオフセットで、特定の時点で開始するイベント。これは、新しいFacebookイベントが時間を追跡する方法であり、ユーザーがさまざまなタイムゾーンのイベントを表示できるようにします。現地時間(非推奨、例: '2012-07-04T19:00:00'):タイムゾーン情報を持たないレガシーイベント。この形式は非推奨ですが、システムに残っているレガシーイベントのために引き続き返されます。