Home > Article > Backend Development > The difference between php date and gmdate in obtaining date_PHP tutorial
date -- format a local time/date
gmdate -- format a GMT/UTC date/time, returning Greenwich Mean Time (GMT).
For example, our current time zone is +8, then the time returned by the server running the following script should be like this:
The current time is assumed to be 2007-03-14 12:15 :27
echo date('Y-m-d H:i:s', time()); The output is: 2007-03-14 12:15:27
echo gmdate('Y-m-d H :i:s', time()); The output is: 2007-03-14 04:15:27
But this is only the result of running PHP under Linux+Apache. If it is run under Windows, Then both functions return: 2007-03-14 04:15:27.
Therefore, we should give a compatible writing method, use gmdate uniformly, and set the current time zone manually. The writing method is improved as follows:
echo gmdate('Y-m-d H:i:s', time () + 3600 * 8);
In this way, the correct result is obtained no matter under Linux+Apache or Windows. Of course, there is another advantage to writing this way. When the website is for the whole world, then the website As long as the user sets the time zone, the program automatically calculates the time based on the time zone set by the user. The information release time in the database only stores the time generated by the current time(). Then the release time seen in the China +8 time zone is: 2007- 03-14 12:15:27, then users in the European +2 time zone will see the release time of this information is: 2007-03-14 06:15:27, so the time of the information will all correspond correctly.