2012-02-28 13 views
2

日付(年、月、日)と時刻(時分秒)を一緒に表示する標準APIリクエストの結果?または、この場合タイムスタンプを返す必要がありますか?日付+時間のAPI応答形式(isoなのですか?)

+0

UNIXタイムスタンプ; '1970-01-01T00:00:00-00:00'(UTC)からの秒数です。タイムスタンプを送信する必要がありますが、フォーマットされた日付を送信する必要がある場合は、そのように見えるISO8601を送信してください。 – Umbrella

答えて

7

ISO8601の形式を使用します。常にUTCタイムゾーンを使用してください。 ISOの標準であり、どのライブラリでも解析可能でなければなりません。 combindly PHPの使用DateTimeZoneDateTimeオブジェクトで

2012-02-28T20:27:21+0000

ISO8601の日付を取得します。

$dt = new DateTime("now", new DateTimeZone("UTC")); 
echo $dt->format(DATE_ISO8601)` 

詳しくは、PHPマニュアルのDate/Timeを参照してください。

+0

混乱を避けるためにタイムゾーンを忘れないでください。 –

+0

@ Michael-Oありがとうございました。常にUTCでなければなりません。 ISO8601の 'Z'はゼロゾーンを意味します。私はそれを加えた。 –

+0

PHPコードは正規化されたズールー時間ではなく、圧縮されたオフセットを追加します。 –

2

私はtimestampを返すのが良いアイデアだろうと思います。 これにより、APIユーザーは簡単に操作できます。 (私の意見)

1

整数のUNIXタイムスタンプかフルでISO8601です。

0

RFC822形式:2012年2月18日午後02時27分18秒date()を使用して-0000

DAY MONTH YEAR HOUR:MINUTES:SECONDS UTC-OFFSET 

date('d M y H:i:s O') 

TwitterのAPIは、それを使用し、その利点のいくつかは、それが読めるということですPHPやJavaScript、その他の言語で簡単に解析することができます。また、日付が表示される時間帯を知ることができます。

+2

RFC822は、非常に優れた形式ではなく、言語に依存せず、文字列でソート可能でもありません。これはISO以前の遺物です。 –

+0

このRFCもかなり古いです。 –

関連する問題