如何解决碳 - 日期采用 ISO8601 格式,带有偏移量表示法
我需要使用 PHP Carbon 将用户给定的日期时间格式为 Y-m-d H:i:s
转换为 ISO8601 格式和偏移表示法。所需的时区是欧洲/柏林。
到目前为止我尝试过的是
$from = '2021-05-01 00:00:00';
$dateF = Carbon::createFromDate($from)->tz('Europe/Berlin')->format('Y-m-d\Th:i:sP');
我得到的结果几乎是我想要的
2021-05-01T02:00:00+02:00
我真正需要的是准确的 h:i:s
2021-05-01T00:00:00+02:00
有什么想法吗?
解决方法
请注意,您需要 H
而不是 h
0-23 小时。
而且您只需要使用 parse 并在其中包含日期的时区,即可让 Carbon 了解必须读取日期时间的时区:
$from = '2021-05-01 00:00:00';
echo Carbon::parse("$from Europe/Berlin")->format('Y-m-d\TH:i:sP');
如果您关心 createFromDate
变量中的小时/分钟/秒,$from
不是很好,因为它只返回与当前时间一起传递的日期。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。