我正在用 CakePHP 构建一个博客引擎,我想显示当前访问者的文章相对于他们一天中的当地时间。
对于现在是早上的访问者,我将展示与开始你的一天相关的文章和一夜之间发生的新闻项目。
对于现在是晚上的游客,我将展示一些文章,回顾白天的重大事件的亮点。
我能想到的唯一可能的解决方案是通过 Javascript 将他们当前的时区发送到服务器,但这只能在网页加载后发生。在 CakePHP 应用程序为索引操作呈现分页视图时,我该如何做到这一点?
我正在用 CakePHP 构建一个博客引擎,我想显示当前访问者的文章相对于他们一天中的当地时间。
对于现在是早上的访问者,我将展示与开始你的一天相关的文章和一夜之间发生的新闻项目。
对于现在是晚上的游客,我将展示一些文章,回顾白天的重大事件的亮点。
我能想到的唯一可能的解决方案是通过 Javascript 将他们当前的时区发送到服务器,但这只能在网页加载后发生。在 CakePHP 应用程序为索引操作呈现分页视图时,我该如何做到这一点?
不完全确定 php,但是这适用于所有语言。您最好在 GMT 中存储差异以供用户使用
i copied syntax from internet
var d = new Date()
var n = d.getTimezoneOffset();
现在在第一页,在页面加载时运行此代码,并使用 ajax 或任何东西将 n 的值存储在 DB 中。所以,每当您的用户登录时,您都会获得时间差异,直到他/她注销。使用该 DB 值(存储在会话中以获得更好的效果使用)进一步处理。
进一步创建功能,如
addGMTDiff()
{
// fetch stored value for difference and return
}
在每个获取 UTC 时间的 sql 查询之后调用此函数。