php - 如何在 PHP 的指定时区获取当天的午夜?

标签 php datetime

我在纽约有一台服务器,在加利福尼亚有一个“客户端”,它希望该服务器计算出加利福尼亚当天的午夜,这与纽约一天中的三个小时不同。

我只能计算纽约当天的午夜,但我需要能够计算加利福尼亚(或任何其他任意时区)当天的午夜

我确实有权访问时区与 UTC 的偏移量。

$tzOffset = "-700"; // Timezone offset from UTC (in this case, PDT)

我现在使用的(半工作)方法是

strtotime("00:00:00 " . $tzOffset);

太平洋夏令时间 6 月 25 日中午 10:00,此方法将在太平洋夏令时间 6 月 26 日中午 12:00 返回午夜,而此时它应该在太平洋夏令时间 6 月 25 日中午 12:00 返回。

最佳答案

// create time from string
$date_time = new Datetime('midnight', new Datetimezone('America/Los_Angeles'));
// string representation of time in America/Los_Angeles
echo $date_time->format('Y-m-d H:i:s') . PHP_EOL;
$date_time->setTimezone(new Datetimezone('America/New_York'));
// string representation of the same time in America/New_York
echo $date_time->format('Y-m-d H:i:s') . PHP_EOL;

http://php.net/manual/en/datetime.formats.php

关于php - 如何在 PHP 的指定时区获取当天的午夜?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24423698/

相关文章:

PHP四舍五入到小数点后第二位

php - 有没有办法将数组绑定(bind)到mysqli prepare

javascript - 使用引导代码点火器将数据从 Controller 发送到弹出模式

python - 如何在 Python 中指定日期和时间?

php - 将数据库记录从东部时间转换为格林威治标准时间

php - mysqli_fetch_assoc()需要参数/调用成员函数bind_param()错误。如何获取并修复实际的mysql错误?

php - codeigniter flashdata未清除

php - laravel created_at 未显示正确的值,即数据库内的值

java - 日期操作和 SQL 日期时间 WHERE 查询

tsql - 如何将秒转换为 HH :MM:SS using T-SQL