strtotime() 是一个用于将时间字符串解析为 Unix 时间戳的函数,但它只能处理标准的英文日期格式。如果传入的日期格式是非标准的、中文或其他语言的日期格式(如 “2019年10月1日”),strtotime() 会返回 false 或空。
要处理像 “2019年10月1日” 这样的中文日期字符串,可以先进行格式转换,将中文格式转换为标准的英文格式,再使用 strtotime()。
<?php
$date_str = ‘2019年10月1日’;
// 将中文字符替换为标准的符号
$date_str = str_replace([‘年’, ‘月’, ‘日’], [‘-‘, ‘-‘, ”], $date_str);
// 使用 strtotime 解析日期
$timestamp = strtotime($date_str);
if ($timestamp !== false) {
echo “Unix 时间戳为: ” . $timestamp;
echo “\n对应的日期为: ” . date(‘Y-m-d’, $timestamp);
} else {
echo “无法解析日期。”;
}
?>