2013-02-20 89 views
4

我正在研究幾年的代碼庫,它使用DateTime。該服務器正在使用PHP 5.2如何從PHP 5.2的DateTime對象獲取unix時間戳?

我看到DateTime :: getTimestamp()已被添加後PHP 5.3

是否有可能從DateTime獲得時間戳PHP 5.2

我用get_class_methods來查看該方法是否可用,但事實並非如此。

Array 
(
    [0] => __construct 
    [1] => format 
    [2] => modify 
    [3] => getTimezone 
    [4] => setTimezone 
    [5] => getOffset 
    [6] => setTime 
    [7] => setDate 
    [8] => setISODate 
) 
+1

可能重複的[是否有可能從這樣的日期獲取UNIX時間2011-02-27 02:04:46?](http://stackoverflow.com/questions/5749319/is-it-possible-to- get-unix-time-from-such-date-2011-02-27-020446) – mario 2013-02-20 02:31:18

回答

10
$datetime = new DateTime(); 
echo $datetime->format('U'); 

See it in action

編輯

由於PHP 5.4,你可以讓這一個班輪:

echo (new DateTime())->format('U'); 
+0

我討厭它,這是不可能的一行代碼。像這樣''(new DateTime()) - > format('U')',grrr ... – algorhythm 2014-05-07 10:19:30

+1

@algorhythm您可以在PHP 5.4+中使用 – 2014-05-07 11:39:06

+0

Ah,thx,這對我來說是新的;) – algorhythm 2014-05-07 12:45:13

3

使用U作爲參數約會時間: :格式()是使用PHP 5.2的 的替代方案。

$ts = $datetimeObj->format('U'); 
2

如果你想看看在manual

使用U作爲參數爲DateTime ::格式()是使用PHP 5.2的替代時 。

所以DateTime::format('U')它。