學習的教訓:永遠不要相信 PHP 文件。所有東西都要測試!
`$position` 的運作方式與描述不符,至少在 PHP 7 中是如此。在沒有錯誤的情況下解析後,它並不包含 -1。
您仍然可以使用它來設定解析的起始字元位置,但不一定表示是否發生任何錯誤。
要測試錯誤,請將我在另一個註解中的 `$nPosition` 測試程式碼替換為
<?php
// 檢查是否有錯誤
$bError = intl_is_failure(datefmt_get_error_code(oIDF));
// 如果沒有錯誤
if( !$bError ){
// 使用 $aTime 陣列中的 'tm_hour' 和 'tm_min' 來與其他時間值進行比較
...
} else {
// 字串無效
...
}
?>