php mktime介绍
封面图
•
2025-12-24
•
PHP
266
1
1
0
`mktime()` 是 PHP 中一个非常常用的函数,用于**生成指定日期和时间的 Unix 时间戳(即从 1970-01-01 00:00:00 UTC 到现在的秒数)**。它在处理日期和时间操作时非常有用。 --- ## ✅ `mktime()` 函数语法 ```php mktime(int $hour = 0, int $minute = 0, int $second = 0, int $month = 1, int $day = 1, int $year = 1970): int ``` ### 参数说明: | 参数 | 类型 | 说明 | |------------|--------|------| | `$hour` | int | 小时(0-23) | | `$minute` | int | 分钟(0-59) | | `$second` | int | 秒(0-59) | | `$month` | int | 月份(1-12) | | `$day` | int | 日(1-31) | | `$year` | int | 年份(例如:2024) | > 注意:参数顺序是 **小时、分钟、秒、月、日、年**,和我们通常说的“年月日”顺序不同。 --- ## 🔍 示例用法 ### 示例 1:获取当前时间的时间戳 ```php echo mktime(); // 等同于当前时间的 Unix 时间戳 ``` ### 示例 2:获取某个特定时间的时间戳 ```php // 获取 2024 年 4 月 5 日 10:30:15 的时间戳 $timestamp = mktime(10, 30, 15, 4, 5, 2024); echo $timestamp; ``` ### 示例 3:计算明天的日期时间戳 ```php // 今天是 2024-04-05,那么明天就是 2024-04-06 $tomorrow = mktime(0, 0, 0, 4, 6, 2024); echo date("Y-m-d H:i:s", $tomorrow); ``` --- ## ⚠️ 注意事项 - 如果传入的日期不合法(比如 2 月 30 日),`mktime()` 会尝试进行“自动修正”,但结果可能不是你期望的。 - 在 PHP 8.1 之后,`mktime()` 已被弃用(deprecated),推荐使用 `DateTime::setTime()` 或 `DateTimeImmutable::setTime()` 来代替。 --- ## 🧩 替代方法(推荐) 如果你使用的是 PHP 8.1+,可以使用 `DateTime` 类来替代 `mktime()`: ```php $date = new DateTime(); $date->setDate(2024, 4, 5); $date->setTime(10, 30, 15); echo $date->getTimestamp(); // 输出对应的时间戳 ``` --- ## ✅ 总结 | 功能 | 描述 | |--------------|------| | `mktime()` | 生成指定日期时间的 Unix 时间戳 | | 参数顺序 | 小时、分钟、秒、月、日、年 | | 用途 | 日期计算、时间戳转换、日期比较等 | | 推荐替代 | `DateTime` 类(PHP 8.1+) | --- 如果你有具体的使用场景或问题,欢迎继续提问!
上一篇:
苹果银耳瘦肉汤 菜谱
下一篇:
php遍历文件夹读取文件夹中图片并分页显示图片
标题录入,一次不能超过6条
留言
评论