mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-06-28 22:30:04 +00:00
Date/Time: Replace all instances of date() with gmdate().
Use of `date()` in core depends on PHP timezone set to UTC and not changed by third party code (which cannot be guaranteed). `gmdate()` is functionally equivalent, but is not affected by PHP timezone setting: it's always UTC, which is the exact behavior the core needs. Props nielsdeblaauw, Rarst. Fixes #46438. See #44491. git-svn-id: https://develop.svn.wordpress.org/trunk@45424 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -3432,13 +3432,13 @@ function get_date_from_gmt( $string, $format = 'Y-m-d H:i:s' ) {
|
||||
if ( $tz ) {
|
||||
$datetime = date_create( $string, new DateTimeZone( 'UTC' ) );
|
||||
if ( ! $datetime ) {
|
||||
return date( $format, 0 );
|
||||
return gmdate( $format, 0 );
|
||||
}
|
||||
$datetime->setTimezone( new DateTimeZone( $tz ) );
|
||||
$string_localtime = $datetime->format( $format );
|
||||
} else {
|
||||
if ( ! preg_match( '#([0-9]{1,4})-([0-9]{1,2})-([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})#', $string, $matches ) ) {
|
||||
return date( $format, 0 );
|
||||
return gmdate( $format, 0 );
|
||||
}
|
||||
$string_time = gmmktime( $matches[4], $matches[5], $matches[6], $matches[2], $matches[3], $matches[1] );
|
||||
$string_localtime = gmdate( $format, $string_time + get_option( 'gmt_offset' ) * HOUR_IN_SECONDS );
|
||||
|
||||
Reference in New Issue
Block a user