飞龙博客

深入经藏 智慧如海

php或js获取指定时区的当前时间

feilong.org 修订于2011-06-10 11:34:05 2,743

今天抽空找下php或js获取指定时区的当前时间的方法。修订网址是:http://feilong.org/utc-time-php-javascript 希望对你有用!

如果你是上海人,北京人,湖北人,福建人,你的时区是东8区,你现在是大白天中午,而这个时候地球上其它地方也许是天刚刚亮,也许是深更半夜。
如果你的网上业务有美国的客户,他们在大白天找到你的网站,却发现你不在线,这时候,你其实是“深更半夜”,也许正在熟睡的梦乡。
如果你是夜猫子,熬夜到深更半夜,却发现MSN上一声“hello”,一个美国客户找你做网站,你很想说,我困了,好想睡觉。

你于是在网站上表明:

飞龙东八区工作时间:(UTC+8)8:00-23:00
现在是东8区(UTC+8)时间:2011-05-05 09:31:33

I am at work at 8:00-23:00 [UTC+8]
Now is 2011-05-05 09:31:33 [UTC+8]

一、这里飞龙先用php获取指定时区[UTC+8]的当前时间的方法:

<p>飞龙工作时间:<br />东八区 8:00到23:00</p>
<?php date_default_timezone_set('Asia/Shanghai');echo '<p>此时东8区:<br />'.date('Y-m-d H:i:s').'</p>'; ?>

二、用javascript获取指定时区的当前时间的方法:

1、首先创建javascript代码函数 calcTime

<script language="JavaScript">
// function to calculate local time
// in a different city
// given the city's UTC offset
function calcTime(city, offset) {
// create Date object for current location
d = new Date();
 
// convert to msec
// add local time zone offset
// get UTC time in msec
utc = d.getTime() + (d.getTimezoneOffset() * 60000);
 
// create new Date object for different city
// using supplied offset
nd = new Date(utc + (3600000*offset));
 
// return time as a string
return "飞龙在 " + city + "时间:" + nd.toLocaleString();
}
</script>

2、然后在body某地方显示指定时区的时间。飞龙提示:网页编码必须是utf-8

<p>工作时间:<br />东八区 8:00到23:00</p>
<p><script language="JavaScript">
document.write(calcTime('Shanghai 东八区', '+8'));
</script></p>

三、飞龙现在当然在utc+8东八区,如果美国客户找我,他发现我此时正在睡大觉,他就不会找我。如果他是夜猫子,发现我此时是上午10点,那么他就可以放心的找到我了。显然php实现方法最简单。

更新网址:http://feilong.org/utc-time-php-javascript
最初发布:20110505 02:50:22 feilong.org 于广州

加入收藏夹,查看更方便。

所在分类: 网站开发

新作:

旧文:

飞龙前端QQ群