php 设置时区小结,PHP中设置时区方法小结

找到原因后,在网上搜索到了一些关于PHP的时区设置方法:

1、修改php.ini,在php.ini中找到data.timezone=去掉它前面的;号,然后设置data.timezone=“Asia/Shanghai”;即可。

2、在程序PHP5以上版本的程序代码中使用函数ini_set('date.timezone','Asia/Shanghai');或者date_default_timezone_set(‘Asia/Shanghai');

一些常用的时区标识符说明:

Asia/Shanghai–上海

Asia/Chongqing–重庆

Asia/Urumqi–乌鲁木齐

Asia/Hong_Kong–香港

Asia/Macao–澳门

Asia/Taipei–台北

Asia/Singapore–新加坡

函数设置时区方法:

复制代码代码如下:

function_exists(date_default_timezone_set);//在这他总是返回1,这函数是判断这里面的字符是不是一个定义了的函数名

date_default_timezone_set("Etc/GMT");//这是格林威治标准时间,得到的时间和默认时区是一样的

date_default_timezone_set("Etc/GMT+8");//这里比林威治标准时间慢8小时

date_default_timezone_set("Etc/GMT-8");//这里比林威治标准时间快8小时

date_default_timezone_set('PRC');//设置中国时区

?>

函数ini_set()设置时区:

可以在文件开头加入ini_set('date.timezone','Asia/Shanghai');//'Asia/Shanghai'为上海时区

手动修改php.ini设置打开php找到date.timezone="PRC"如有去掉前面的分号,没有的话手动添加!

以下是一些资料补充:

装上PHP5后你会发现这样的问题$atime=date("Y-m-dH:i:s");

echo$atime;

?>

输出:2006-05-1606:36:06

现在几点了?/我的是14:36

这是为什么捏?

原因是假如你不在程序或配置文件中设置你的服务器当地时区的话

PHP所取的时间是格林威治标准时间,所以和你当地的时间会有出入

格林威治标准时间和北京时间大概差8个小时左右那么我们如何避免时间误差呢?

我们一起来看看解决方法:

在页头使用date_default_timezone_set()设置我的默认时区为北京时间

复制代码代码如下:

date_default_timezone_set('PRC');

echodate('Y-m-dH:i:s');

?>

时间和服务器当前时间一样了!

另外附date_default_timezone_set用法如下:

------------------------------------------------------------------------------------

date_default_timezone_set

(PHP5>=5.1.0RC1)

date_default_timezone_set--设定用于一个脚本中所有日期时间函数的默认时区

说明

booldate_default_timezone_set(stringtimezone_identifier)

date_default_timezone_set()设定用于所有日期时间函数的默认时区。

注:自PHP5.1.0起(此版本日期时间函数被重写了),如果时区不合法则每个对日期时间函数的调用都会产生一条E_NOTICE级别的错误信息。

参数

timezone_identifier

时区标识符,例如UTC或Europe/Lisbon

返回值

本函数永远返回TRUE(即使timezone_identifier参数不合法)。

-------------------------------------------------------------------------------------

或者修改php.ini中date.timezone值

date.timezone=PRC

装上PHP5后你会发现这样的问题

$atime=date("Y-m-dH:i:s");

echo$atime;

?>

输出:2006-05-1606:36:06

现在几点了?/我的是14:36

这是为什么捏?

原因是假如你不在程序或配置文件中设置你的服务器当地时区的话

PHP所取的时间是格林威治标准时间,所以和你当地的时间会有出入

格林威治标准时间和北京时间大概差8个小时左右那么我们如何避免时间误差呢?

我们一起来看看解决方法:

在页头使用date_default_timezone_set()设置我的默认时区为北京时间

复制代码代码如下:

date_default_timezone_set('PRC');

echodate('Y-m-dH:i:s');

?>

时间和服务器当前时间一样了

!

另外附date_default_timezone_set用法如下:

------------------------------------------------------------------------------------

date_default_timezone_set

(PHP5>=5.1.0RC1)

date_default_timezone_set--设定用于一个脚本中所有日期时间函数的默认时区

说明

booldate_default_timezone_set(stringtimezone_identifier)

date_default_timezone_set()设定用于所有日期时间函数的默认时区。

注:自PHP5.1.0起(此版本日期时间函数被重写了),如果时区不合法则每个对日期时间函数的调用都会产生一条E_NOTICE级别的错误信息。

参数

timezone_identifier

时区标识符,例如UTC或Europe/Lisbon

返回值

本函数永远返回TRUE(即使timezone_identifier参数不合法)。

-------------------------------------------------------------------------------------

或者修改php.ini中date.timezone值

date.timezone=PRC

您可能感兴趣的文章:关于php程序报date()警告的处理(date_default_timezone_set)PHP跨时区(UTC时间)应用解决方案PHP中遇到的时区问题解决方法PHP获取中国时间(上海时区时间)及美国时间的方法php时区转换转换函数php输出全球各个时区列表的方法有关PHP和MySQL时区的一点总结PHP中设置时区,记录日志文件的实现代码PHP应用跨时区功能的实现方法PHPdate_default_timezone_set()设置时区操作实例分析

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值