我正在使用 PHP 从 API 获取 XML(说快 3 倍)。我正在从所有数据中返回所有正确的字符串。当我尝试使用以下两种方法重新格式化时间字符串时,问题就来了:
$dataset = $xmlDoc->getElementsByTagName( "Class" );
foreach( $dataset as $row ) {
$xmlStartTimes = $row->getElementsByTagName( "StartTime" );
$xmlStartTime = $xmlStartTimes->item(0)->nodeValue;
echo $xmlStartTime; // Gives eg. 12/30/1899 6:15:00 PM
// Convert Time to 24H
// Attempt 1:
$cleanStartTime = preg_match('^12/30/1899 (0[1-9]|1[0-2]):(0[1-9]|[1-5][0-9]):([00]) (AM|PM|pm|am)$', $xmlStartTime, $matches);
print_r($matches); // Gives empty array
// Attempt 2:
$cleanStartTime = date("H:i", strtotime("$xmlStartTime"));
echo $cleanStartTime // Gives 1:00
}
谢谢参观。