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



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

$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,我使用以下代码

重新确认
<?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";
?>

需要在整个脚本中使用date_default_timezone_set,只需使用DateTime对象指定timezone:

$now = new DateTime(null, new DateTimeZone('America/New_York'));
$now->setTimezone(new DateTimeZone('Europe/London'));    // Another way
echo $now->format("Y-m-dTH:i:sO"); // something like "2015-02-11T06:16:47+0100" (ISO 8601)

您必须设置时区,cf http://www.php.net/manual/en/book.datetime.php

要启用PHP扩展intl,请遵循以下步骤。

    在任意编辑器中打开xampp/php/php.ini文件。
  1. 搜索";extension=php_intl.dll"
  2. 请删除开头分号(;)extension=php_intl.dll。出现。扩展= php_intl.dll。
  3. 保存xampp/php/php.ini文件
  4. 重新启动xampp/wamp。

您应该将时区设置为您想要的时区之一。设置印度时区

// set default timezone
date_default_timezone_set('Asia/Kolkata');
$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";

可以使用"system(string $command[, int &$return_var]): string"函数。对于Windows系统("time");, system("time> output.txt");将响应放入output.txt文件中。如果你打算在别人的服务器上部署你的网站,那么你可能不想硬编码服务器时间,因为服务器可能会移动到一个未知的时区。那么最好在php.ini文件中设置默认时区。我使用Hostinger,它允许你配置php。ini值。

相关内容

  • 没有找到相关文章

最新更新