函式名:strptime()
適用版本:PHP 5.1.0及以上版本
函式功能:將格式化時間字串解析為時間陣列
用法: strptime(string $date, string $format): array|false
引數說明:
- $date:要解析的格式化時間字串
- $format:時間字串的格式,與strftime()函式的格式相同
返回值:
- 如果解析成功,返回一個包含時間資訊的關聯陣列,包括以下鍵:
- "tm_sec":秒數(0-59)
- "tm_min":分鐘數(0-59)
- "tm_hour":小時數(0-23)
- "tm_mday":一個月中的第幾天(1-31)
- "tm_mon":月份(0-11)
- "tm_year":年份(從1900開始計算)
- "tm_wday":一週中的第幾天(0-6,0表示星期日)
- "tm_yday":一年中的第幾天(0-365)
- "unparsed":未解析的時間字串的部分
- 如果解析失敗,返回false
示例:
$dateString = "2021-09-15";
$formatString = "%Y-%m-%d";
$timeArray = strptime($dateString, $formatString);
if ($timeArray !== false) {
echo "解析成功!";
echo "年份:" . $timeArray['tm_year'] + 1900 . "<br>";
echo "月份:" . $timeArray['tm_mon'] + 1 . "<br>";
echo "日期:" . $timeArray['tm_mday'] . "<br>";
} else {
echo "解析失敗!";
}
輸出:
解析成功!
年份:2021
月份:9
日期:15
注意事項:
- strptime()函式返回的時間陣列中的年份需要加上1900,月份需要加上1,以獲取正確的日期資訊。
- 由於strptime()函式不支援解析時區、時差等資訊,可能會導致解析結果不準確,建議在需要處理時區的情況下使用更全面的日期時間處理函式。