繁体   English   中英

Cakephp3 相对时区

[英]Cakephp3 Relative Timezones

在我的 Cakephp 应用程序中,作为一个单一的事实,我保存文章的创建日期,并将 UTC 时区设置为默认值。 当我渲染日期日期时,显示的 UTC 时间不正确。 当然我可以设置时区如下:

$article->created->i18nFormat(\IntlDateFormatter::FULL, 'Europe/Paris');

但是,这只有在所有用户都在 CET 上时才有效。 是否可以在考虑用户时区的情况下呈现日期,这对于任何给定用户来说当然可能不同?

考虑到您在数据库中维护用户帐户

  • 您可以创建一个单独的设置页面,用户可以在其中放置或更新时区。

    $timezoneList = DateTimeZone::listIdentifiers(DateTimeZone::ALL);

这给出了所有时区。

  • 在前端使用它,一旦用户选择时区,将用户的时区存储在数据库中。

  • 使用用户的时区

    $article->created->i18nFormat(\IntlDateFormatter::FULL, $userTimeZone);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM