关于unixstamp的问题?有请各路高手,绝对不简单的问题 也就是说date函数是跟系统的时区有关系的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 换一个函数名吧,php已经有了function getDateTime($unixtime,$zoneNum=8){ $t=$unixtime-date("Z")+$zoneNum*3600; if($t>0)return date("Y-m-d H:i:s",$t); else return -1;}echo getDateTime(time(),0);//GMT时间echo "<BR>";echo getDateTime(time());//北京时间 <?phpfunction myDate($unixtime,$zoneNum=8) { $h = date("H",0); return date("Y-m-d H:i:s",$unixtime+($zoneNum-$h)*3600);}echo myDate(time()); // 2003-06-13 12:07:54echo myDate(time(),0); // 2003-06-13 04:07:54?> xuzuning(唠叨)的好像不对吧如果有的时区为负值呢,而date("H",0)返回的值始终是正值 vivanboy(从不睡懒觉的鸟儿)的函数可以还有没有其他方法,各位继续 date("H",0) 返回的是服务器端的时差要从给定的时区中扣除的$zoneNum-$h 我在手册上看的阿,明明是:H - hour, 24-hour format; i.e. "00" to "23" 就是00-23,根本没有负值,也不是什么服务器端的时差。你这里指的时差是什么?比方说1970-1-1 00:00:00的时候-1区的date("H",0)是23,你这里8-23就不正确了 比方说在GMT时间1970-01-01 00:00:00的时候-1区的date("H",0)是23,你这里8-23就不正确了,8-23相差15个小时,而实际上只是相差8-(-1)=9个小时 用vivanboy(从不睡懒觉的鸟儿)的date("Z")比较准确不过,还有没有其它比较经典的算法阿?一步一步来求,尽量不要根据php的时间函数来计算!搞定了我开帖给分这个帖应该算是比较经典的吧 <?phpfunction myDate($unixtime,$zoneNum=8) { return date("Y-m-d H:i:s",($unixtime/3600+$zoneNum)*3600);} <?phpfunction myDate($unixtime,$zoneNum=8) { return gmdate("Y-m-d H:i:s",($unixtime+$zoneNum*3600);} Owen_Young() 的还是跟系统的时区有关系,所以不正确 不好意思owen_young()第二个函数正确,不错。哈哈,又学到一个函数gmdate,谢谢给分 php的session的问题 php如何改变HTTP_REFERER wapeq建站程序后台上传图片时提示错误:Fatal error: Call to undefined function, 好像要修改代码才行 汗!! 请教哦 为什么这段代码总是报错啊??? php 中如何高效的加载包含文件 PHP高手请进!视频播客 php运行方式从cgi改为isapi导致php程序出现zend乱码 php5安装及iis配置 这些特殊的函数都是干什么用的? 怎样实现表单<textarea>中的文本在提交后自动分段。 投票系统IP问题请教 大家帮帮我好吗?
$t=$unixtime-date("Z")+$zoneNum*3600;
if($t>0)return date("Y-m-d H:i:s",$t);
else return -1;
}
echo getDateTime(time(),0);//GMT时间
echo "<BR>";
echo getDateTime(time());//北京时间
function myDate($unixtime,$zoneNum=8) {
$h = date("H",0);
return date("Y-m-d H:i:s",$unixtime+($zoneNum-$h)*3600);
}
echo myDate(time()); // 2003-06-13 12:07:54
echo myDate(time(),0); // 2003-06-13 04:07:54
?>
要从给定的时区中扣除的$zoneNum-$h
H - hour, 24-hour format; i.e. "00" to "23"
就是00-23,根本没有负值,也不是什么服务器端的时差。你这里指的时差是什么?比方说1970-1-1 00:00:00的时候-1区的date("H",0)是23,你这里8-23就不正确了
function myDate($unixtime,$zoneNum=8) {
return date("Y-m-d H:i:s",($unixtime/3600+$zoneNum)*3600);
}
function myDate($unixtime,$zoneNum=8) {
return gmdate("Y-m-d H:i:s",($unixtime+$zoneNum*3600);
}
owen_young()第二个函数正确,不错。哈哈,又学到一个函数gmdate,谢谢给分