WordPress Version: 4.5
/**
* Parses an RFC3339 time into a Unix timestamp.
*
* @since 4.4.0
*
* @param string $date RFC3339 timestamp.
* @param bool $force_utc Optional. Whether to force UTC timezone instead of using
* the timestamp's timezone. Default false.
* @return int Unix timestamp.
*/
function rest_parse_date($date, $force_utc = false)
{
if ($force_utc) {
$date = preg_replace('/[+-]\d+:?\d+$/', '+00:00', $date);
}
$regex = '#^\d{4}-\d{2}-\d{2}[Tt ]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}(?::\d{2})?)?$#';
if (!preg_match($regex, $date, $matches)) {
return false;
}
return strtotime($date);
}