欢迎访问宙启技术站
智能推送

PHP日期时间函数总结:常用函数详解

发布时间:2023-05-30 04:28:35

PHP是一种流行的服务器端脚本语言,它内置了许多日期时间函数,可以帮助开发者处理日期和时间的计算和格式化,从而方便开发工作。本文总结了PHP日期时间函数的常用函数,让大家快速了解它们的用法和功能。

1. time()函数

该函数用于获取当前时间戳(Unix时间戳),也就是从1970年1月1日00:00:00 UTC到当前时间的秒数。

2. date()函数

该函数用于格式化日期和时间,可以根据指定的格式输出日期和时间的字符串,例如:

    echo date('Y-m-d H:i:s'); //输出当前时间,格式为:年-月-日 时:分:秒

其中,参数Y表示年份(4位),m表示月份(2位),d表示日期(2位),H表示小时(24小时制),i表示分钟(2位),s表示秒数(2位)。

3. mktime()函数

该函数用于根据指定的日期和时间创建Unix时间戳,例如:

    $timestamp = mktime(12, 30, 0, 7, 15, 2021); //创建2021年7月15日12:30:00的时间戳

其中, 个参数表示小时,第二个参数表示分钟,第三个参数表示秒数,第四个参数表示月份,第五个参数表示日期,第六个参数表示年份。

4. strtotime()函数

该函数用于将时间字符串转换为Unix时间戳,例如:

    $timestamp = strtotime('2021-07-15 12:30:00'); //将时间字符串转换为时间戳

其中,参数可以是任何合法的日期时间字符串,例如"now"表示当前时间,"tomorrow"表示明天的同一时间,"next friday"表示下一个周五的同一时间,等等。

5. strtotime()函数与date()函数组合使用

这一组合用法非常常见。因为strtotime()函数可以将时间字符串转换为Unix时间戳,而date()函数可以将Unix时间戳格式化为指定格式的时间字符串。例如:

    $timestamp = strtotime('2021-07-15 12:30:00');

    echo date('Y年m月d日 H:i:s', $timestamp); //输出时间戳对应的时间字符串,格式为:年月日 时:分:秒

6. strtotime()函数与DateInterval类组合使用

该组合用法用于计算日期时间之间的差值。例如,要计算两个日期时间之间相差的天数,可以使用以下代码:

    $start = strtotime('2021-07-01');

    $end = strtotime('2021-07-15');

    $days = round(($end - $start) / (24 * 3600)); //计算相差的天数

其中,使用round()函数可以将小数四舍五入为整数,24 * 3600表示一天的总秒数。

7. date_parse()函数

该函数用于将日期字符串解析为数组,包含了该日期的各个部分,例如:

    $date_info = date_parse('2021-07-15 12:30:00');

    print_r($date_info); //输出数组,包含了该日期的年份、月份、日期、小时、分钟、秒数等信息

其中,返回的数组包含了以下键:

- year:年份

- month:月份

- day:日期

- hour:小时

- minute:分钟

- second:秒数

- fraction:微秒(小数部分)

- timezone:时区

8. strtotime()函数的时区设置

默认情况下,strtotime()函数使用系统的时区设置。但是,可以使用date_default_timezone_set()函数来设置时区,例如:

    date_default_timezone_set('Asia/Shanghai'); //设置时区为上海

    $timestamp = strtotime('now'); //获取当前时间戳,此时会使用上海时区

注意:在PHP 5.1.0或以后的版本中,可以使用ini_set()函数设置时区,例如:

    ini_set('date.timezone', 'Asia/Shanghai'); //设置时区为上海

以上就是PHP日期时间函数的常用函数详解。这些函数的使用涉及到了日期格式化、时间戳的创建、转换和计算等操作,对于开发者日常工作中处理日期时间相关的需求有很大帮助。