0

チェックインを表示できるアプリを作成しています。いくつかのデータを表示できましたが、日付を表示できません。API ドキュメントを読んだところ、次のことがわかりました。

    id: "5107ed69704379518de3cb5f"
    createdAt: 1359474025
    type: "checkin"
    timeZoneOffset: -420
    user: {
        id: "46466115"
        firstName: "Abraham"
        lastName: "Gonzalez"
        gender: "male"
        relationship: "self"
        photo: {
            prefix: "https://irs3.4sqi.net/img/user/"
            suffix: "/JB543SD4TURRQR2A.jpg"
        }

実装しようとしましたが、数字の文字列が表示され、これらの数字の解釈方法を知りたいです。いくつかの調査を行ったところ、数字が秒であることがわかりました( http://www.epochconverter.com/ )、しかし、私はそれらを解釈する方法がわかりません:(

それは私のphpコードです:

$check_ins =json_decode(file_get_contents("https://api.foursquare.com/v2/users/self/checkins?oauth_token={$_SESSION['access_token']}"));
foreach($check_ins->response->checkins->items as $check_in):
        echo"

            <b>Lugar</b>: ".$check_in->venue->name."
            <br><b>Pais</b>: ".$check_in->venue->location->country."
            <br><b>Ciudad</b>: ".$check_in->venue->location->city."
            <br><b>Estado</b>: ".$check_in->venue->location->state."
            <b><br>Dirección</b>: ".$check_in->venue->location->address."
            **<b><br>Dirección</b>: ".$check_in->createdAt."**
            <br><br>";  
endforeach;

それで、私の質問は次のとおりです。日付を表示する方法/またはフォースクエアが提供する数字をどのように解釈できますか?

4

4 に答える 4

1

date()を試しましたか:

echo date("F j, Y H:i:s", $check_in->createdAt);

これは単なるタイムスタンプであるため、基本的な日付関数が機能するはずです。誤解した場合は、コメントしてください。更新できます。

于 2013-01-29T18:01:53.357 に答える
0

これは明らかに Unix タイムスタンプ値です。PHPdate()関数またはDateTimeオブジェクトを使用して、これを人間が読める形式に変換できます。

ここで不明なのは、そのタイムスタンプにタイムゾーンのオフセット値が含まれているかどうか (つまり、タイムスタンプはタイムゾーンにローカライズされているため、UTC を取得するにはオフセットを適用する必要があるかどうか)、またはそれが UTC 値であり、適用する必要があるかどうかです。チェックインのローカライズされた時刻を取得するためのオフセット。それについては、おそらくドキュメントを参照するか、調べるためにいくつかの実験を行う必要があります。

于 2013-01-29T18:02:11.073 に答える
0

その数字はタイムスタンプです。日付関数を使用して、人間が読める文字列に変換できます。

date('Y-m-d H:i:s', $yourNumber);
于 2013-01-29T18:02:31.093 に答える
0

PHP の日付関数を使用します。最初の部分は必要な形式で、2 番目は UNIX のタイムスタンプです。

echo date('d m Y h:i', 1359474025);

29 01 2013 04:40
于 2013-01-29T18:02:47.443 に答える