所以我try 了各种组合,从我的数据库(使用Wordpress)中获取一个日期,以在英国夏季时间显示,但我无法得到任何工作.

是否有任何简单的解决方案可以采用日期字符串,并确保在英国的夏季时间是UTC时间的一小时?

$classJson = $class->info;
$classJsonAsArray = json_decode($classJson, TRUE);

$classStartDate = strtotime($class->periodStart);
$classStartTime = date('H:i',$classStartDate);

因此,目前 $class->periodStart 返回:2022-04-06 08:30:00

该活动的时间应为上午9:30

我需要它做的就是显示正确的时间,就像现在一样,在前端显示为上午8点30分.

推荐答案

DateTime很好地处理时区.

$dateStringInUtc = '2022-04-06 08:30:00';
$date = new DateTime($dateStringInUtc, new DateTimeZone('UTC'));
$date->setTimezone(new DateTimeZone('Europe/London'));

echo $date->format('Y-m-d H:i:s'); // will output 2022-04-06 09:30:00

Php相关问答推荐

WooCommerce拆分运输包裹上的商品数量增加运输成本

使用额外的输入字段自定义WooCommerce单个产品

在WooCommerce Checkout帐单地址字段后插入自定义按钮

管理员订单列表中的自定义列与WooCommerce 8.6.1一起消失

ForHumans函数中的月当量与单位限制

Laravel路由到控制器传输变量解决方案需要

Rappasoft Datatables V2(我想在另一个表具有相同值列时显示数据)

对 WooCommerce 购物车和 checkout 中显示的运输方式进行排序

按日期向 WooCommerce 中的我的帐户订单添加过滤器

Symfony:从控制器内部调用自定义命令

PHP API - 本地主机中的 SSL 证书问题

调用未定义的方法 mysqli::execute_query()

注册命名空间后如何获取xml node 值?

在 groupBy laravel 5.7 中 Select 多列

Shopware 6:无法在新的自定义插件中保存关联字段(媒体)

同时执行odbc_execute、odbc_fetch_row和odbc_result

PHP/Laravel 中的自定义时区

如何将子查询结果添加到学说 2 中主查询的末尾?

列表不在 GROUP BY 子句中并且包含 X2CRM 中的非聚合列

我想更新表格中的结果并将它们发布到浏览器,但它不起作用