strtotime()
是 PHP 中的一个内置函数,用于将任何英文文本日期时间描述解析为 Unix 时间戳。这意味着,给定一个包含日期和/或时间信息的字符串,该函数会返回对应的 Unix 时间戳(自 1970-01-01 00:00:00 GMT 起到现在的秒数)。
以下是 strtotime()
函数的基本用法:
$timestamp = strtotime("now"); // 获取当前时间的 Unix 时间戳
$timestamp = strtotime("2022-01-01"); // 获取指定日期 "2022-01-01" 的 Unix 时间戳
$timestamp = strtotime("+2 days"); // 获取当前时间后两天的 Unix 时间戳
$timestamp = strtotime("next Thursday"); // 获取下一个星期四的 Unix 时间戳
$timestamp = strtotime("10:30 pm"); // 获取今天晚上 10:30 的 Unix 时间戳
注意,strtotime()
函数对输入字符串的格式有一定要求。例如,它可以识别 “2022-01-01”、“January 1, 2022”、“next Thursday” 等格式,但不能直接识别 “2022年1月1日” 这样的格式。如果需要处理非英文日期字符串,可以考虑使用 DateTime
类和相关方法来实现。
此外,strtotime()
函数还可以接受第二个参数,表示计算相对时间时的基准时间戳。例如:
$base_timestamp = strtotime("2022-01-01");
$new_timestamp = strtotime("+2 days", $base_timestamp); // 获取 "2022-01-01" 之后两天的 Unix 时间戳
总之,strtotime()
函数是 PHP 中处理日期和时间的强大工具,可以方便地解析和计算日期时间。