php - 碳 - 日期采用 ISO8601 格式,带有偏移表示法
问题描述
我需要 Y-m-d H:i:s
使用 Php Carbon 将用户给定的日期时间格式转换为带有偏移表示法的 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
变量中的小时/分钟/秒,那就不好了,因为它只返回您通过当前时间的日期。
推荐阅读
- python - 如何优化正则表达式以查找格式日/月/年的日期?
- python - 需要将来自 sys.argv[1] 的参数作为输入传递给 python 中的 glob()
- clojure - 这个 core.match 绑定示例是如何工作的?
- python-3.x - 如何在 Windows 10 中激活 linux virtualenv
- sqlite - 在 SQL case 语句中显示相同的值
- java - 部署在 Eclipse 中构建的 Java 桌面应用程序
- mongodb - Mongo db 首次安装
- php - 转到 VSCode 中 PHP 扩展的定义
- javascript - 如何查看太大而无法在 CLI 中使用的大型对象(例如,作为响应对象)
- php - PHP laravel 列搜索无法有效地使用 ->editcolumn getdatatable