Bootstrap 日期时间选择器和 Laravel 时区

Bootstrap datetimepicker and Laravel timezones

我的 Laravel 应用当前设置为使用 UTC 作为时区。它用于所有日期,例如 created_atupdated_at.

但是,在我的应用程序中,我有一个表单允许用户使用 Bootstrap datetimepicker 插件指定 scheduled_at 日期。现在这里的问题是 datetimepicker 插件使用 momentjs 来自动显示用户本地时区中输入的日期。

所以我试图想出一个解决方案,将他们输入的日期插入为 UTC。最大的障碍是我希望它仍然显示他们当前时区的输入日期,然后在插入数据库之前转换它。

我在想我可以有一个隐藏的输入字段,它将使用 momentjs 自动填充他们的时区名称,然后使用该隐藏字段通过 Carbon 将日期转换为 UTC。

这是我最好的还是唯一的选择?

最终使用 moment-timezone-with-data 插件并使用 moment.tz.guess() 自动填充隐藏的 timezone 字段。