Google Drive API の createdDate/modifiedDate に問題があります。データを取得すると、時間が表示されます: 2012-10-26T09:27:09.382Z
そのような日付を「通常の」 2012-10-26 09:27:.382Z に配置する方法を教えてくれる人はいますか
ありがとう :)
Google Drive API の createdDate/modifiedDate に問題があります。データを取得すると、時間が表示されます: 2012-10-26T09:27:09.382Z
そのような日付を「通常の」 2012-10-26 09:27:.382Z に配置する方法を教えてくれる人はいますか
ありがとう :)
これらは RFC 3339 タイムスタンプです。これは Python の例です:
def rfc3339_internet(date):
d = date.strftime('%Y-%m-%dT%H:%M:%S%z')
return d[:-2] + ':' + d[-2:]
これを処理する正しい方法はわかりませんが、この文字列を "T" 文字で分解し、新しい配列で生成された 2 つの文字列から新しい日付を作成できるようです。
Tの日付を爆発させる
$date = explode('T', 2012-10-26T09:27:09.382Z);
$date には、T の前後にある 2 つの部分の配列が含まれています。
date('D M d, Y', strtotime($date[0]));
2枚目は秒弦になります。
date('g:i:s a', strtotime($date[1]))
その文字列の Z が何であるかはわかりませんが、返されたくない場合は、この時点で Z を str_replace することができます。
date('g:i:s a', strtotime(str_replace('Z', '', $date[1])));
Javaで;
com.google.api.services.drive.model.File lGoogleFile = lMyDriveHelper.getRootFile();
com.google.api.client.util.DateTime lGoogleCreatedDate = lGoogleFile.getCreatedDate();
java.util.Date lTheNormalJavaDate = new Date(lGoogleCreatedDate.getValue());
Java Date は「正常」に動作します ;)