Before formally learning the date function, you must understand a few concepts:
1. Time zone
2. Universal time
3.Unix timestamp
Time zone
This concept has been heard a lot before. Let's say a few words. The real areas we use in real life are also regulated in computers.
When the International Longitude Conference was held in Washington in 1884, in order to overcome time confusion, the world was divided into 24 time zones.
In China, the time in Dongba District, where the capital Beijing is located, is used as the unified time for the whole country.
Universal Time
Not only astronomers use Greenwich Time (English abbreviation: GMT), but this term also often appears in news newspapers. We know that there are local times everywhere. If we use local time to record a major international event, it will be complicated and inconvenient. And it will be easy to make mistakes as time goes by. Therefore, astronomers proposed a recording method that is acceptable and convenient for everyone, which is to use the local time in Greenwich (a region in the UK) as the standard.
unix timestamp
The computer itself does not know time. We set a time in the computer to facilitate calculations. So we specified a calculation method, Unix timestamp.
The number of seconds elapsed from the Unix epoch (0:00 on January 1, 1970) to a time.
We have learned a few concepts, now we can start to learn the time function.
1. Set the time zone
If we are a multinational multilingual program, we usually write a time zone in the configuration file, each time when the program is running. The time zone settings will be read to display the time.
The function to set the time zone is:
1).date_default_timezone_get()
2).date_default_timezone_set()
We will not focus on the first function, it is relatively simple.
Usage is as follows:
string date_default_timezone_get (void)
Function is as follows:
Get the default value used by all date and time functions in a script Time zone
Example:
<?php echo date_default_timezone_get (); ?>
This displays the currently set time.
The second function is the key point:
The usage is as follows:
bool date_default_timezone_set (string $timezone_identifier)
The functions are as follows:
Default time zone used for all date and time functions
Example:
<?php //定义一下时区常量,以后你可以放到配置文件里 define('TIME_ZONE','Asia/shanghai'); //执行函数 date_default_timezone_set(TIME_ZONE); echo date('Y-m-d H:i:s'); ?>
Try comparing the code of the above example, and then comment out date_default_timezone_set and see what will be prompted.
Note:
For the time zone list, please see the official manual http://php.net/manual/zh/timezones.php
2.time() to obtain the current unix timestamp
The function of time() function is to obtain the Unix timestamp of the current time.
The following code outputs the Unix timestamp of the current time.
<?php $time=time(); print_r( $time); ?>
Program running result:
1421597858
3. "Flax drop" is the key to learning time processing in PHP
Y The English word is year, which means year - —亚
m English represents month, which represents the month——hem
d English represents day, which represents the date——fall
So we need to output the year before , month, date. For example: July 1, 1997, we can use the above three parameters.
<?php echo date('Y年m月d日'); ?>
You can try running the code to see if it is displayed.
There are several parameters after:
H:m:s represents: hours, minutes and seconds
h in English is: hour represents hours
The English version of i is: minute, which represents minutes. The English version of s is: second, which represents seconds.
If written in full, it is:
<?php //就可以显示出来当前的时间了哟。 echo date('Y-m-d H:i:s'); ?>
The date function is used to format a time. Output to facilitate time display or storage. The syntax format is as follows:
string date ( string $forrnat [, int $tirnestamp] )In the parameter list:
$timestamp is a timestamp, and the function presses this timestamp into $format Output in the specified format.
If $timestamp has no input value, it defaults to the current time.
$format is a string of time output format, and the specified characters need to be used to construct the output format.
Format parameter table of date function:
Characters | Description | Return value | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
d | The day of the month, 2 digits with leading zeros | 01 to 31 | ||||||||||||||||||||||||||||||||||||
Day of the week in English, 3 letters | Mon to Sun | |||||||||||||||||||||||||||||||||||||
The day of the month without leading zeros | 1 to 31 | |||||||||||||||||||||||||||||||||||||
Day of the week in English | Sunday to Saturday | |||||||||||||||||||||||||||||||||||||
1 Format number represents the day of the week | 1 (meaning Monday) to 7 (meaning Sunday) | |||||||||||||||||||||||||||||||||||||
The English suffix after the number of days in each month, 2 characters | st, nd, rd or th. Can be used with jg | |||||||||||||||||||||||||||||||||||||
The day of the week, the number represents | 0 (indicating Sunday) to 6 (indicating Saturday) | |||||||||||||||||||||||||||||||||||||
Day of the year | 0 to 366 | |||||||||||||||||||||||||||||||||||||
The week in the year, each week starts on Monday | 42 (the 42nd week of the year) | |||||||||||||||||||||||||||||||||||||
month , complete text format | January to December | |||||||||||||||||||||||||||||||||||||
The number represents the month, with leading zeros | 01 to 12 | |||||||||||||||||||||||||||||||||||||
3 letter abbreviation for the month | Jan to Dec | |||||||||||||||||||||||||||||||||||||
The number represents the month, without leading zeros | 1 to 12 | |||||||||||||||||||||||||||||||||||||
The number of days in a given month | 28 to 31 | |||||||||||||||||||||||||||||||||||||
Whether it is a leap year | If it is a leap year, it is 1, otherwise it is o | |||||||||||||||||||||||||||||||||||||
Format year number | For example, 2007 | |||||||||||||||||||||||||||||||||||||
4 digits represent the complete year | For example, 1999 or 2008 | |||||||||||||||||||||||||||||||||||||
2-digit year | For example, 99 or 08 | |||||||||||||||||||||||||||||||||||||
Lowercase AM and PM values | am or pm | |||||||||||||||||||||||||||||||||||||
Uppercase AM and PM values | AM or PM | |||||||||||||||||||||||||||||||||||||
hour, 12-hour format, no leading zeros | 1 to 12 | |||||||||||||||||||||||||||||||||||||
Hour, 24-hour format, no leading zeros | 0 to 23 | |||||||||||||||||||||||||||||||||||||
Yes Minutes with leading zeros | 00 to 59 | |||||||||||||||||||||||||||||||||||||
Seconds with leading zeros | 00 to 59 | |||||||||||||||||||||||||||||||||||||
Time zone identifier | ||||||||||||||||||||||||||||||||||||||
Long integer number |
Key name | Description | Return value |
---|---|---|
Seconds | Numbers 0 to 59 | |
Minutes | Numbers 0 to 59 | |
Hours | Numbers 0 to 23 | |
The first day of the month Days | Numbers 1 to 31 | |
Days of the week | Numbers 0 (meaning Sunday) to 6 (Indicates Saturday) | |
Month | Number 1 to 12 | |
Year | Complete year represented by 4 digits | |
Day of the year | Number 0 To 365 | |
Day of the week in English | Sunday to Saturday | |
Month in English | January to December | |
The number of seconds since the Unix epoch | Long integer Number |
The following code can return the details of the getdate array.
<?php $mytime=getdate(); print_r( $mytime); ?>
print_r can output all the key names and values in an array. Running this code, the results are as follows. The program outputs the time and date details of the current computer:
Array ( [seconds] => 1 //秒 [minutes] => 10 //分钟 [hours] => 17 //小时 [mday] => 18 //日 [wday] => 0 //星期中的第几天 [mon] => 1 //月 [year] => 2015 //年 [yday] => 17 //年中的第几天 [weekday] => Sunday //星期 [month] => January //月份 [0] => 1421597401 //时间戳 )
After understanding the getdate function and the returned array, it is easy to obtain the current time information. The following code uses the getdate function to obtain time information, and calls the value of the returned time array to output the time information.
<?php $mytime = getdate(); echo "年 :".$mytime['year']."\n"; echo "月 :".$mytime['mon']."\n"; echo "日 :".$mytime['mday']."\n"; echo "时 :".$mytime['hours']."\n"; echo "分 :".$mytime['minutes']."\n"; echo "秒 :".$mytime['seconds']."\n"; echo "一个小时中的第几钟 :".$mytime['minutes']."\n"; echo "这是一分钟的第几秒 :".$mytime['seconds']."\n"; echo "星期名称 :".$mytime['weekday']."\n"; echo "月份名称 :".$mytime['month']."\n"; echo "时间戳 :".$mytime[0]."\n"; ?>
Run this program and the detailed information of the current time will be displayed. The results of running the program are as follows.
Year:2015Month:1Day:18
Hour:17
Minute:14
Second:11
The first day of the week Day: 14
Day of the year: 11
Name of week: Sunday
Name of month: January
Time stamp: 1421597651
Next Section