mysql2date( string $format, string $date, bool $translate = true ): string|int|false

Converts given MySQL date string into a different format.

Description

  • $format should be a PHP date format string.
    • ‘U’ and ‘G’ formats will return an integer sum of timestamp with timezone offset.
    • $date is expected to be local time in MySQL format (Y-m-d H:i:s).

Historically UTC time could be passed to the function to produce Unix timestamp.

If $translate is true then the given date and format string will be passed to wp_date() for translation.

Parameters

$formatstringrequired
Format of the date to return.
$datestringrequired
Date string to convert.
$translatebooloptional
Whether the return date should be translated.

Default:true

Return

string|int|false Integer if $format is 'U' or 'G', string otherwise.
False on failure.

Source

function mysql2date( $format, $date, $translate = true ) {	if ( empty( $date ) ) {	return false;	}	$timezone = wp_timezone();	$datetime = date_create( $date, $timezone );	if ( false === $datetime ) {	return false;	}	// Returns a sum of timestamp with timezone offset. Ideally should never be used.	if ( 'G' === $format || 'U' === $format ) {	return $datetime->getTimestamp() + $datetime->getOffset();	}	if ( $translate ) {	return wp_date( $format, $datetime->getTimestamp(), $timezone );	}	return $datetime->format( $format ); } 

Changelog

VersionDescription
0.71Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.