的YouTube返回如下Updated date
和Submitted on
日期:2010-08-22T04:46:18.000Z
如何解析YouTube返回日期到時間戳?
是否有一個PHP函數,或解析這個日期面具?
的YouTube返回如下Updated date
和Submitted on
日期:2010-08-22T04:46:18.000Z
如何解析YouTube返回日期到時間戳?
是否有一個PHP函數,或解析這個日期面具?
<?php
$ts = strtotime("2010-08-22T04:46:18.000Z");
echo date("Y-m-d H:i:s", $ts);
?>
這會在我的系統上返回2010-08-22 09:46:18
。您看到,日期的時間部分包含時區信息(Z爲祖魯時間),因此google數據api返回的日期爲Aug/22/2010 04:46:18 GMT
。我的電腦在格林威治標準時間5點,因此時間部分在當地時間被翻譯爲09:46:18
。希望這解釋了一切。
聽起來像strtotime是你在找什麼。
編輯:如果這不起作用,看看在Date and Time classes - 有在指定的格式解析日期(like this方法 - 它並不直接返回一個時間戳,但如果你構建從這個日期時間,你可以使用它的getTimestamp - 方法)
試試這個:
$date=substr("2010-08-22T04:46:18.000z",0,strlen("2010-08-22T04:46:18.000z")-1);
$stamp=strtotime($date);
的「Z」的結尾似乎是的strtotime的問題。
strtotime不會爲此日期格式返回正確的時間戳! – 2010-12-15 09:32:32
@doublethink:請看看我的編輯 – oezi 2010-12-15 09:42:37
strtotime應該能夠解析這個日期。見http://www.php.net/manual/en/datetime.formats.compound.php,部分本地化符號> SOAP – 2010-12-15 09:52:25