2012-11-08 57 views
-1

功能日期,我使用:PHP日期函数

public function datetime() { 
     $today = getdate(); 
     $datetime = $today['year'].'-'.$today['mon'].'-'.$today['mday'].' '. 
        ($today['hours']+8).':'.$today['minutes'].':'.$today['seconds']; 
     return $datetime; 
    } 

有两个服务器[A和B] :服务器A使用的是Windows,使用Linux

两个服务器 服务器B对于日期和时间是相同的,但是当我运行这个PHP代码时,输​​出的时间是不同的。

这是为什么?

+1

我有一种感觉,你的两个服务器有不同的时间设置(或时区) –

+1

你检查了['date.timezone'](http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone)设置吗? – Havelock

+0

哪一个是正确的? – webnoob

回答

1

如果你只需要日期做如下:

<?php 
    date_default_timezone_set('America/Los_Angeles'); 
    $today = date('Y-m-d'); 
    echo $today; 
    ?> 

如果您还需要时间戳做如下

<?php 

     date_default_timezone_set('America/Los_Angeles'); 
     $today = date('Y-m-d H:i:s'); 
     echo $today; 
     ?> 

希望帮助你

+0

-1:这会有什么帮助?以及你如何得到'date('Y-m-d H:i:s')'的时间戳? – Havelock

+0

看到我编辑的答案...对不起,我没有得到你在开始 – Anwar

+1

你需要有一个共同的时区,因为服务器可以在不同的地区。如果您提供公共时区,则您获得的日期将根据您提供的时区而定 – Anwar