【问题标题】:PHP TIME/DATE timezone dont workPHP TIME/DATE 时区不起作用
【发布时间】:2017-05-17 06:49:57
【问题描述】:

我尝试回显日期,但日期提前一小时,我已经更改了 ini 中的时区,但它不起作用。

这是我的代码:

$year = date('y');
$month = date('m');
$day = date('d');
$hour = date('H');
$min = date('i');
$sek = date('s');
$date = $day . "." . $month . "." . $year . "/" . $hour . ":" . $min .    ":" . $sek;
echo $date;

提前致谢!

现在我有 9:34,但网站显示我是 8:34 重启后就不行了!

【问题讨论】:

  • 您应该在更改 ini 文件后重新启动您的 apache,Click Here 了解更多详情。
  • 似乎是一种特殊的日期生成方式——为什么不喜欢echo date( 'd.m.Y/H:i:s', strtotime('now') );
  • 正如我在回答中所写,您需要设置 date_default_timezone_set("CET");或者你在哪个时区。
  • @Michael 我试过了,但没用
  • 我知道这是一个肮脏的黑客,但你可以:$hour = date('H')+1;

标签: php date time


【解决方案1】:

您可以设置您的时区:

// date_default_timezone_set('CET');
date_default_timezone_set('Continent/Country');
$year = date('y');
$month = date('m');
$day = date('d');
$hour = date('H');
$min = date('i');
$sek = date('s');
$date = $day . "." . $month . "." . $year . "/" . $hour . ":" . $min .    ":" . $sek;
echo $date;

【讨论】:

    【解决方案2】:

    你需要设置默认时区。

    Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /home/jiangyahui/worksp/php/test_1.php on line 8
    
    03.01.17/08:21:18
    

    【讨论】:

      【解决方案3】:

      您确定您设置的时区有效吗? 您可以回显phpinfo(); 并检查“date.timezone”字段。如果值不正确,您可以使用date_default_timezone_set('YOUR TIMEZONE'); 在代码中更改时区

      注意:如果您想以您的格式打印日期时间,您可以使用

      date("y.m.d/H:i:s");
      

      【讨论】:

        【解决方案4】:

        此代码将为您提供不同大陆的日期和时间。 代码炒锅

        <?php
        date_default_timezone_set("Asia/Calcutta");
        echo "The Date in Calcutta India is " . date("d-m-y");
        echo "<br>The Time in Calcutta India is" . date("h-i-s-a");
        
        date_default_timezone_set("America/New_York");
        echo "<br><br>The Date in New York America is " . date("d-m-y");
        echo "<br>The Time in New York America  is " . date("h-i-s-a");
        ?>
        

        【讨论】:

        • 我首先这样做:date_default_timezone_set('UTC');它没有工作
        猜你喜欢
        • 2017-03-17
        • 1970-01-01
        • 2015-09-13
        • 1970-01-01
        • 1970-01-01
        • 2023-03-09
        • 2013-12-15
        相关资源
        最近更新 更多