Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何告知网络访问者的当地时间?_Php_Cakephp_Cakephp 2.0 - Fatal编程技术网

Php 如何告知网络访问者的当地时间?

Php 如何告知网络访问者的当地时间?,php,cakephp,cakephp-2.0,Php,Cakephp,Cakephp 2.0,我正在用CakePHP构建一个博客引擎,我想展示当前访客文章相对于他们当地时间的情况 对于现在是早上的访客,我将展示与开始一天相关的文章和一夜之间发生的新闻 对于目前是晚上的游客,我将展示一些文章,概述白天主要活动的要点 我能想到的唯一可能的解决方案是通过Javascript将他们当前的时区发送到服务器,但这只能在网页加载后发生。在CakePHP应用程序呈现索引操作的分页视图时,我如何做到这一点?不完全确定php,但是这在所有语言中都适用。 您最好将差异存储在GMT中,以供用户使用 i cop

我正在用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查询之后调用此函数