已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。
2天前关闭。
这篇文章是编辑并提交审查7小时前.
Improve this question
我想强制获得标准时间。现在纽约的夏令时是UTC-4。我想阻止它,并强制获得标准时间(UTC-5)。请参阅下面的示例。
<?php
function TimezoneConvert($datetime,$fromTimeZone,$toTimeZone){
$timezone = new DateTimeZone( $fromTimeZone );
$newDateTime = new DateTime($datetime,$timezone);
$newDateTime->setTimezone(new DateTimeZone($toTimeZone));
return $newDateTime->format("Y-m-d H:i:s");
}
echo "1. ".TimezoneConvert("2023-03-10 23:30:00",'UTC','America/new_york');
echo "<br> 2. ".TimezoneConvert("2023-03-25 23:30:00",'UTC','America/new_york');
?>
我创建了一个日期和时间转换函数。我有两个UTC日期,第一个是2023-03-10 23:30:00,第二个是2023-03-25 23:30:00。
现在我试着将这个UTC日期转换为America/new_约克时区。显示这两个UTC日期的不同输出,见下文。
Output:
1. 2023-03-10 18:30:00
2. 2023-03-25 19:30:00
看到有一个小时不同,我需要得到两个日期与标准时间(UTC-5)和防止DST时间。所以有什么办法来解决我的问题?
1条答案
按热度按时间jutyujz01#
您可以使用此代码在laravel中获取预期值。
在这里,我们使用\DateTimeZone类创建一个新的时区对象,其固定偏移量为-05:00。然后,我们将此时区对象传递给\Carbon\Carbon类的now()方法,以获取具有指定时区的当前日期时间。最后,我们使用format()方法将日期时间格式化为所需格式('Y-m-d H:i:s')