search
HomeBackend DevelopmentPHP Tutorialphp > 关于php时区时间异常有关问题 date 当前时间 时差(转载)

php > 关于php时区时间错误问题 date 当前时间 时差(转载)

关于php时区时间错误问题 date 当前时间 时差 当地 本地date_default_timezone_set
之前有一个遗留问题,就是echo date("y-m-d h:i:s",time())回来的时间总是与实际时间对不上,今天终于在网上找到了原因和解决方法,分享如下:
我补充一点,我按照下面提示的方法修改php.ini找不到date.timezone 这行,是不是就没办法了呢,当然不是啦,哈哈没有的话就自己加嘛,自己动手丰衣足食。我加了这样一句date.timezone = "PRC",问题就搞定了,高兴一下.
从php5.1.0开始,php.ini里加入了date.timezone这个选项,默认情况下是关闭的

也就是显示的时间(无论用什么php命令)都是格林威治标准时间

和我们的时间(北京时间)差了正好8个小时,有以下3中方法可以恢复正常的时间。

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

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

3,一劳永逸,仅限能修改php.ini。打开php.ini查找date.timezone 去掉前面的分号
= 后面加XXX,重启http服务(如apache2或iis等)即可

关于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

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
如何根据当前时间戳创建文件/文件夹并为其命名如何根据当前时间戳创建文件/文件夹并为其命名Apr 27, 2023 pm 11:07 PM

如果您正在寻找根据系统时间戳自动创建文件和文件夹并为其命名的方法,那么您来对地方了。有一种超级简单的方法可以用来完成这项任务。然后,创建的文件夹或文件可用于各种目的,例如存储文件备份、根据日期对文件进行排序等。在本文中,我们将通过一些非常简单的步骤解释如何在Windows11/10中自动创建文件和文件夹,并根据系统的时间戳对其进行命名。使用的方法是批处理脚本,非常简单。希望你喜欢阅读这篇文章。第1节:如何根据系统当前时间戳自动创建文件夹并命名第1步:首先,导航到要在其中创建文件夹的父文件夹,

PHP Warning: date() expects parameter 2 to be long, string given的解决方法PHP Warning: date() expects parameter 2 to be long, string given的解决方法Jun 22, 2023 pm 08:03 PM

在使用PHP程序开发时,经常会碰到一些警告或者错误的提示信息。其中,可能出现的一个错误提示就是:PHPWarning:date()expectsparameter2tobelong,stringgiven。这个错误的提示信息意思是:函数date()的第二个参数期望是长整型(long),但是实际传递给它的是字符串(string)。那么,我们

Linux中如何让所有用户登录时打印指定提示信息Linux中如何让所有用户登录时打印指定提示信息Feb 19, 2024 pm 05:12 PM

在Linux系统中,通过配置文件和脚本,可以实现让所有用户登录时显示指定的提示信息。接下来,我们将介绍几种常用的实现方法。方法一:修改/etc/issue文件打开终端,使用文本编辑器(如vi或nano)以root权限编辑/etc/issue文件。sudovi/etc/issue在文件末尾添加你想要显示的提示信息,例如:WelcometoMyLinuxSystem!Pleasebeawarethatallactivitiesaremonitored.保存并关闭文件。现在,当用户登录时,系统将显示/

Ubuntu如何配置软件镜像源?Ubuntu如何配置软件镜像源?Feb 19, 2024 am 11:15 AM

配置软件镜像源在Ubuntu中是提高下载速度和获取软件更新的有效方法。以下是配置的步骤:打开终端:在Ubuntu桌面上,按下Ctrl+Alt+T组合键可以打开终端。备份原有的软件源配置文件(可选):如果你想保留原有的软件源配置备份,可以执行以下命令备份/etc/apt/sources.list文件:sudocp/etc/apt/sources.list/etc/apt/sources.list.backup编辑软件源配置文件:使用文本编辑器(如nano或vi)打开软件源配置文件:sudonano

Java中使用Date和SimpleDateFormat类来处理时间的方法及用法介绍Java中使用Date和SimpleDateFormat类来处理时间的方法及用法介绍Apr 21, 2023 pm 03:01 PM

一.介绍java.util包中的Date类表示特定的时间,精确到毫秒。如果要想使用我们的Date类,那么我们必须得引入我们的Date类。Date类直接写入年份是得不到正确的结果的。因为java中Date是从1900年开始算的,所以前面的第一个参数只要填入从1900年后过了多少年就是你想要得到的年份。月需要减1,日可以直接插入。这种方法用的比较少,常用的是第二种方法。这种方法是将一个符合特定格式,比如yyyy-MM-dd,的字符串转化成为Date类型的数据。首先,定义一个Date类型的对象Date

如何使用Date类的getTime()方法获取日期的毫秒表示形式如何使用Date类的getTime()方法获取日期的毫秒表示形式Jul 24, 2023 am 11:42 AM

如何使用Date类的getTime()方法获取日期的毫秒表示形式在Java中,Date类是用于表示日期和时间的类。它提供了许多有用的方法来操作和获取日期对象的信息。其中,getTime()方法是Date类中的一个重要方法,它可以返回日期对象的毫秒表示形式。接下来,我们将详细介绍如何使用这个方法来获取日期的毫秒表示形式,并提供相应的代码示例。使用Date类的g

ETC币值得长期持有吗?ETC币值得投资吗?ETC币值得长期持有吗?ETC币值得投资吗?Feb 27, 2024 pm 08:58 PM

ETC币值得长期持有吗?ETC币(EthereumClassic)是一种基于区块链技术的加密货币,诞生于2016年7月20日,是以太坊区块链的一个分支。ETC币的起源可以追溯到以太坊社区对以太坊硬分叉的争议。ETC币值得投资吗?ETC币是否值得投资,需要综合考虑以下因素:技术优势:ETC币基于以太坊区块链技术,具有智能合约、可编程性等优势,在去中心化应用开发领域具有广阔的应用前景。社区支持:ETC币拥有一个活跃的社区,社区成员对ETC币的长期发展充满信心。市场需求:ETC币在加密货币市场上具有较

Python中的日历库和日期库有哪些选择?Python中的日历库和日期库有哪些选择?Oct 21, 2023 am 09:22 AM

Python中有许多优秀的日历库和日期库供我们使用,这些库可以帮助我们处理日期和日历相关的操作。接下来,我将为大家介绍几个常用的选择,并提供相应的代码示例。datetime库:datetime是Python内置的日期和时间处理模块,提供了许多日期和时间相关的类和方法,可以用于处理日期、时间、时间差等操作。示例代码:importdatetime#获取当

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft