Php 跨浏览器Cookie过期不一致

Php 跨浏览器Cookie过期不一致,php,browser,cookies,cross-browser,Php,Browser,Cookies,Cross Browser,我正在寻找一种针对所有浏览器设置短时间cookie的方法。显然,每个浏览器处理PHP setcookie方法的方式都不同。下面是我的结果 PHP代码: setcookie("TestCookie", $value, time()+7200, "/", ".domain.com", 1, true); 结果: setcookie("TestCookie", $value, time()+7200, "/", ".domain.com", 1, true); 歌剧11.10 铬6.0.472.6

我正在寻找一种针对所有浏览器设置短时间cookie的方法。显然,每个浏览器处理PHP setcookie方法的方式都不同。下面是我的结果

PHP代码:

setcookie("TestCookie", $value, time()+7200, "/", ".domain.com", 1, true);
结果:

setcookie("TestCookie", $value, time()+7200, "/", ".domain.com", 1, true);
歌剧11.10

铬6.0.472.63

火狐4

Safari 3.2.3

Internet Explorer 8

正如您所看到的,cookies的过期日期/时间变化很大,从过去几小时的预期工作到只有1小时!非常令人沮丧

除了尝试上述方法外,我还尝试通过unixtime设置确切的过期日期/时间。。。我使用PHP级别的time()或通过JavaScript检索的浏览器unixtime完成了这项工作

setcookie("TestCookie", $value, 1316621928, "/", ".domain.com", 1, true);
每个浏览器处理这个问题的方式也不同。我似乎找不到一种对所有浏览器都适用的方法。有人知道实现这一点的方法吗


谢谢。

如果您尝试更长的持续时间会发生什么。比如一天/一周/一年?仍然不一致,但是,当你设定从现在开始的2/3周的到期日时,你不介意它关闭几个小时。但是,根据当前的要求,它们都必须与分钟同步。能否显示
setcookie(“TestCookie”,“$value,1316621928”,“/”,“.domain.com”,1,true)的结果?使用javascript执行相同操作时的时间和结果。是否可以尝试以UTC设置服务器的时间,同时确保时间正确,并确保桌面的本地时间设置正确?是否有解决方案?我自己也遇到了一些奇怪的饼干过期问题。
Local time of test: 1316622064
PHP Server Time: Wed Sep 21 08:07:38 PDT 2011
CookieExpiration Time: Wednesday, September 21, 2011 10:22:50 PM
Local time of test: 1316622359
PHP Server Time: Wed Sep 21 08:10:48 PDT 2011
CookieExpiration Time: 9/21/11 5:10 PM
Local time of test: 1316623009
PHP Server Time: Wed Sep 21 08:21:37 PDT 2011

Cookie Data: 
TestCookie
x
domain.com/
9728
3932016640
30177410
2837190416
30177404
setcookie("TestCookie", $value, 1316621928, "/", ".domain.com", 1, true);