`
kaozjlin
  • 浏览: 115199 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

php时间函数出错及解决方法 php date_default_timezone_set()函数用法

    博客分类:
  • php
 
阅读更多

php时间函数出错及解决方法:php date_default_timezone_set()函数 date.timezone时间区这些因素都是影响php时间的,最主要的问题是默认php时间函数用的是格林威治标准时间和我们的时间(北京时间)差了正好8个小时,这也是php时间函数出错解决的人口。

以前碰到一个问题问题,就是echo date(“y-m-d h:i:s”,time())回来的时间总是与实际时间对不上,今天终于在网上找到了原因和解决方法,分享如下:

从php5.1.0开始,php.ini里加入了date.timezone时间区这个选项,默认情况下是关闭的也就是显示的时间(无论用什么php命令)都是格林威治标准时间和我们的时间(北京时间)差了正好8个小时,有以下3中方法可以恢复正常的时间。

1,最简单的方法就是不要用php5.1以上的版本

2,如果一定要用,而且不能修改php.ini,则需要在关于时间的初始化的语句的
上面加上 date_default_timezone_set (XXX);

3,一劳永逸,仅限能修改php.ini。打开php.ini查找date.timezone时间区去掉前面的分号
= 后面加XXX,重启http服务(如apache2或iis等)即可。如果php.ini找不到date.timezone时间区这行,是不是就没办法了呢,当然不是啦,哈哈没有的话就自己加嘛,自己动手丰衣足食。我加了这样一句date.timezone = “PRC”,问题就搞定了,高兴一下.

关于XXX,大陆内地可用的值是:Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次为重庆,上海,乌鲁木齐)
港台地区可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北)
还有新加坡:Asia/Singapore
老外好像把北京漏调了
其他可用的值是:Etc/GMT-8 ,Singapore ,Hongkong ,PRC
PRC是什么?PRC是中华人民共和国啊-_-
———————————————————————————————————————
解决方式:

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

date_default_timezone_set(‘PRC’);
echo date(‘Y-m-d H:i:s’);

时间和服务器当前时间一样了!!祝贺之
附date_default_timezone_set()函数用法如下

——————————–
date_default_timezone_set()

(PHP 5 >= 5.1.0RC1)
date_default_timezone_set ()– 设定用于一个脚本中所有日期时间函数的默认时区
说明
bool date_default_timezone_set ( string timezone_identifier )

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

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

参数

timezone_identifier

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

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

——————————————————————————————

再附上时区标识符:

CET
CST6CDT
Cuba
EET
Egypt
Eire
EST
EST5EDT
Etc/GMT
Etc/GMT+0
Etc/GMT+1
Etc/GMT+10
Etc/GMT+11
Etc/GMT+12
Etc/GMT+2
Etc/GMT+3
Etc/GMT+4
Etc/GMT+5
Etc/GMT+6
Etc/GMT+7
Etc/GMT+8
Etc/GMT+9
Etc/GMT-0
Etc/GMT-1
Etc/GMT-10
Etc/GMT-11
Etc/GMT-12
Etc/GMT-13
Etc/GMT-14
Etc/GMT-2
Etc/GMT-3
Etc/GMT-4
Etc/GMT-5
Etc/GMT-6
Etc/GMT-7
Etc/GMT-8
Etc/GMT-9
Etc/GMT0
Etc/Greenwich
Etc/UCT
Etc/Universal
Etc/UTC
Etc/Zulu
Factory
GB
GB-Eire
GMT
GMT+0
GMT-0
GMT0
Greenwich
Hongkong
HST
Iceland
Iran
Israel
Jamaica
Japan
Kwajalein
Libya
MET
MST
MST7MDT
Navajo
NZ
NZ-CHAT
Poland
Portugal
PRC
PST8PDT
ROC
ROK
Singapore
Turkey
UCT
Universal
UTC
W-SU
WET

分享到:
评论

相关推荐

    PHP date_default_timezone_set()设置时区操作实例分析

    本文实例讲述了PHP date_default_timezone_set()设置时区操作。分享给大家供大家参考,具体如下: <?php echo function_exists(date_default_timezone_set). ;//在这他总是返回1,这函数是判断这里面的字符...

    PHP 时区列表[时差]

    测试时,使用的函数有:date、date_default_timezone_set、date_default_timezone_get。 注意:基于时区数据库版本的列表 2011.5. 警告:在区域“其他”中,在此请不要使用任何时区列表(除 UTC 外),仅用于向后兼容...

    php:通过Golang实现一些PHP函数。 该库没有第三方依赖性

    Golang实现PHP函数 该软件包通过Golang实现了一些PHP函数。...default_timezone_get DateDefaultTimezoneGet date_default_timezone_set DateDefaultTimezoneSet date_diff 日期差异日期格式日期格式

    php中时间函数date及常用的时间计算

    曾在项目中需要使用到今天,昨天,... date_default_timezone_set()设定脚本所用时区 ini_set()也可以满足,或者修改配置文件  date_sunrise() date_sunset() 返回给定的日期和地点的日出时间和日落时间  date()

    php使用date和strtotime函数输出指定日期的方法

    本文实例讲述了php使用date和strtotime函数输出指定日期的方法。分享给大家供大家参考。具体方法分析如下: 在php中date和strtotime函数都是对日期操作的,但是...复制代码 代码如下:date_default_timezone_set(‘Asia

    PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法

    问题: php函数date(“Y-n-d H-i-s”); 输出的时间与当地时间相差8个小时. 解决思路 ...方法一:date_default_timezone_set(‘PRC’);没有返回值。下面再直接使用date函数就OK了$time = date(Y.”年

    PHP时间相关常用函数用法示例

    date_default_timezone_set("Asia/Shanghai"); /** * 获取时区 */ echo date_default_timezone_get(); //结果 UTC echo " "; /** * 添加时间 */ $date=date_create("2013-03-15"); //创建一个DateTime 对象 ...

    如何使用php输出时间格式

    复制代码 代码如下:<?date_default_timezone_set(“ETC/GMT-8”);$tm=time();echo date(“Y-m-d h:i a”,$tm);echo “ <br>”;...使用专门设置时区的函数,date_default_timezone_set(“ETC/GM

    解决php的“It is not safe to rely on the system’s timezone settings”问题

    如果使用PHP5.3以上版本时,如果没有正确的配置php.ini就会出现PHP日期函数的错误。以前很多旧的PHP编程教程没有说到这个问题,所以不少读者会...timezone setting or the date_default_timezone_set() function. In

    php实现的太平洋时间和北京时间互转的自定义函数分享

    date_default_timezone_set('Pacific/Apia'); if(empty($time)){ $time = time(); } date_default_timezone_set('Asia/Shanghai'); $date = date('Y-m-d H:i:s',$time); $time = strtotime($date); return $...

    PHP中遇到的时区问题解决方法

    最近在学习PHP过程中发现PHP中的格式化时间戳... 在使用格式化输入时间之前,添加ini_set(‘date.timezone’,’Asia/Shanghai’);   或者data_default_timezone_set(‘PRC’);//date_default_timezone_set() 函数设

    PHP中设置时区方法小结

    2、在程序PHP 5以上版本的程序代码中使用函数ini_set(‘date.timezone’,’Asia/Shanghai’);或者date_default_timezone_set(‘Asia/Shanghai’); 一些常用的时区标识符说明: Asia/Shanghai – 上海 Asia/...

    有关 PHP 和 MySQL 时区的一点总结

    PHP 脚本端的市区设置可以在 php.ini 下设置 date.timezone 键的值为 ‘Asia/Shanghai’ 即可。...附,PHP 5.1 以上提供了专门的函数修改对应的时区: date_default_timezone_set(‘Asia/Shanghai’)

    PHP输出时间差函数代码

    php date_default_timezone_set(‘PRC’); //默认时区 echo “今天:”,date(“Y-m-d”,time()),” ”; echo “今天:”,date(“Y-m-d”,strtotime(“18 june 2008″)),” ”; echo “昨天:”,date(“Y-m-d...

    PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】

    date_default_timezone_set('PRC'); //默认时区 //当前的时间增加5天 $date1 = "2018-12-21"; echo date('Y-m-d',strtotime("$date1 +5 day")); //输出结果:2018-12-26 //相应地,要增加月,年,将day改成month或year...

    PHP跨时区(UTC时间)应用解决方案

    1.将程序内部时区设置为UTC时间.(UTC 也可以叫 GMT) PHP设置: date_default_timezone_set(“UTC”); Yii设置: config/main.php 中添加 :’timeZone’=>’UTC’, 如此设置后,PHP生成的时间基本都是UTC时间了.例如: //...

    PHP date()函数警告: It is not safe to rely on the system解决方法

    近来总是有系统邮件提示,... You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still gett ing this warni

    PHP CodeBase:将时间显示为刚刚n分钟/小时前的方法详解

    在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5...phpdate_default_timezone_set(‘PRC’);$date = “1351836000”;echo tranTime($date);function transfer_time($time){ $rtime = date(“m-d H

    FileManager:在线文件管理

    bool date_default_timezone_set ('PRC') 设定用于所有日期时间函数的默认时区为PRC string file_get_contents (string $filename,FILE_USE_INCLUDE_PATH); 将整个文件读入到一个字符串中 $filename : 要...

Global site tag (gtag.js) - Google Analytics