Home >Backend Development >PHP Tutorial >Summary of setting time zone in PHP_PHP tutorial

Summary of setting time zone in PHP_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 15:18:59904browse

After finding the reason, I searched on the Internet and found some time zone setting methods for PHP:

1. Modify php.ini, find data.timezone in php.ini = remove the ; sign in front of it, and then set data. timezone = "Asia/Shanghai"; that's it.

2. Use the function ini_set('date.timezone','Asia/Shanghai'); or date_default_timezone_set('Asia/Shanghai'); in the program code of PHP version 5 or above;

Explanation of some commonly used time zone identifiers:

Asia/Shanghai – Shanghai
Asia/Chongqing – Chongqing
Asia/Urumqi – Urumqi
Asia/Hong_Kong – Hong Kong
Asia/Macao – Macau
Asia/Taipei – Taipei
Asia/Singapore – Singapore


Function setting time zone method:

Copy the code The code is as follows:

function_exists(date_default_timezone_set);//Here he always returns 1, this function is to determine the characters inside Is it a defined function name?
date_default_timezone_set("Etc/GMT");//This is Greenwich Mean Time, and the time obtained is the same as the default time zone
date_default_timezone_set("Etc/GMT+8 ");//This is 8 hours ahead of Ringwich Standard Time
date_default_timezone_set("Etc/GMT-8");//This is 8 hours ahead of Ringwich Standard Time
date_default_timezone_set('PRC') ; //Set the Chinese time zone
?>


Function ini_set() to set the time zone:
You can add ini_set('date. timezone','Asia/Shanghai'); // 'Asia/Shanghai' is the Shanghai time zone

Manually modify the php.ini settings
Open php and find date.timezone = "PRC " If necessary, remove the semicolon in front of it, if not, add it manually!

The following is some additional information:

You will find this problem after installing PHP5

$atime=date ("Y-m-d H:i:s");
echo $atime;
?>
Output: 2006-05-16 06:36:06
What time is it now?/My It’s 14:36 ​​
Why is this?
The reason is that if you do not set the local time zone of your server in the program or configuration file
The time taken by PHP is Greenwich Mean Time, so it will be different from your local time
Greenwich The difference between standard time and Beijing time is about 8 hours. So how can we avoid time errors?
Let’s take a look at the solution:
Use date_default_timezone_set() in the header to set my default time zone to Beijing time
Copy code Code As follows:

date_default_timezone_set('PRC');
echo date('Y-m-d H:i:s');
?>

The time is the same as the current time of the server!
In addition, the usage of date_default_timezone_set is as follows:
------------------------- -------------------------------------------------- ---------
date_default_timezone_set
(PHP 5 >= 5.1.0RC1)
date_default_timezone_set -- Set the default time zone for all date and time functions in a script
Description
bool date_default_timezone_set ( string timezone_identifier )
date_default_timezone_set() Sets the default timezone used for all datetime functions.
Note: Since PHP 5.1.0 (the date and time functions have been rewritten in this version), if the time zone is invalid, each call to the date and time function will generate an E_NOTICE level error message.
Parameters
timezone_identifier
Time zone identifier, such as UTC or Europe/Lisbon
Return value
This function always returns TRUE (even if the timezone_identifier parameter is illegal).
-------------------------------------------------- ---------------------------------------------
Or modify date.timezone in php.ini Value
date.timezone = PRC

After installing PHP5 you will find this problem
$atime=date("Y-m-d H:i:s");
echo $atime;
?>
Output: 2006-05-16 06:36:06
What time is it now?/Mine is 14:36 ​​
Why is this?
The reason is that if you do not set the local time zone of your server in the program or configuration file
The time taken by PHP is Greenwich Mean Time, so it will be different from your local time
Greenwich The difference between standard time and Beijing time is about 8 hours. So how can we avoid time errors?
Let’s take a look at the solution:
Use date_default_timezone_set() in the header to set my default time zone to Beijing time
Copy code Code As follows:

date_default_timezone_set('PRC');
echo date('Y-m-d H:i:s');
?>

The time is the same as the current time of the server!
In addition, the usage of date_default_timezone_set is as follows:
-------------------------- -------------------------------------------------- -------
date_default_timezone_set
(PHP 5 >= 5.1.0RC1)
date_default_timezone_set -- Set the default time zone used for all date and time functions in a script
Description
bool date_default_timezone_set ( string timezone_identifier )
date_default_timezone_set() Sets the default timezone used for all datetime functions.
Note: Since PHP 5.1.0 (the date and time functions have been rewritten in this version), if the time zone is invalid, each call to the date and time function will generate an E_NOTICE level error message.
Parameters
timezone_identifier
Time zone identifier, such as UTC or Europe/Lisbon
Return value
This function always returns TRUE (even if the timezone_identifier parameter is illegal).
-------------------------------------------------- ---------------------------------------------
Or modify date.timezone in php.ini Value
date.timezone = PRC

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/325412.htmlTechArticleAfter finding the reason, I searched on the Internet and found some time zone setting methods for PHP: 1. Modify php.ini, in Find data.timezone in php.ini = remove the ; sign in front of it, and then set data.timezo...
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