如何从服务器获取日期和时间?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (57)

我想从服务器检索日期和时间,并根据它做一些事情。为此,我使用了以下代码:

$info = getdate();
$date = $info['mday'];
$month = $info['mon'];
$year = $info['year'];
$hour = $info['hours'];
$min = $info['minutes'];
$sec = $info['seconds'];

$current_date = "$date/$month/$year == $hour:$min:$sec";

此代码返回正确的日期,但问题是,我在cPanel(服务器时间)中看到的内容与代码中的内容不同。在cPanel中,时间是CDT,而代码显示的是UTC,我使用以下代码再次确认了UTC

<?php echo date("r == e"); ?>

为什么会发生这种情况,以及我必须在代码中做哪些更改,以便我能够获得适当的服务器时间。

提问于
用户回答回答于

你应该将时区设置为想要的其中一个时区

// set default timezone
date_default_timezone_set('America/Chicago'); // CDT

$info = getdate();
$date = $info['mday'];
$month = $info['mon'];
$year = $info['year'];
$hour = $info['hours'];
$min = $info['minutes'];
$sec = $info['seconds'];

$current_date = "$date/$month/$year == $hour:$min:$sec";

或者更短的版本:

// set default timezone
date_default_timezone_set('America/Chicago'); // CDT

$current_date = date('d/m/Y == H:i:s');
用户回答回答于

试试这个-

<?php
date_default_timezone_set('Asia/Kolkata');

$timestamp = time();
$date_time = date("d-m-Y (D) H:i:s", $timestamp);
echo "Current date and local time on this server is $date_time";
?>

扫码关注云+社区