PHP时间相关的函数
PHP中时间相关的函数是非常重要的,在实际开发中使用频率非常高。本文就对PHP中一些常用的时间相关函数进行详细的讲解,包括:日期格式化函数、日期计算函数、时区函数、时间戳函数、系统时间函数、睡眠函数、等待函数等。
一、日期格式化函数
1. date()
date函数用于将时间戳转换为可读的日期格式,其语法如下:
date($format, $timestamp)
其中$format为日期格式化字符串,$timestamp为时间戳。常见的日期格式化字符串如下:
- Y:四位数的年份
- m:月份(01-12)
- d:天(01-31)
- H:小时(00-23)
- i:分钟(00-59)
- s:秒(00-59)
通过这些字符的组合可以构造出各种日期格式。例如,要获取当前时间的年月日时分秒,可以使用如下代码:
echo date("Y-m-d H:i:s");
2. strtotime()
strtotime函数用于将英文文本日期时间格式转换为时间戳,其语法如下:
strtotime($time)
其中$time为要转换的英文文本日期时间格式。例如,下面的代码可以将“2021-10-01 12:00:00”转换为时间戳:
echo strtotime("2021-10-01 12:00:00");
二、日期计算函数
1. mktime()
mktime函数用于获取指定日期时间的时间戳,其语法如下:
mktime($hour, $minute, $second, $month, $day, $year)
其中$hour为小时,$minute为分钟,$second为秒,$month为月份,$day为日期,$year为年份。例如,下面的代码可以获取2021年10月1日12时0分0秒的时间戳:
echo mktime(12, 0, 0, 10, 1, 2021);
2. time()
time函数用于获取当前时间的时间戳,其语法如下:
time()
例如,下面的代码可以获取当前的时间戳:
echo time();
三、时区函数
1. date_default_timezone_set()
date_default_timezone_set函数用于设置时区,其语法如下:
date_default_timezone_set($timezone)
其中$timezone为时区名称,可以通过phpinfo函数查看系统支持的时区。例如,下面的代码可以将时区设置为中国:
date_default_timezone_set("Asia/Shanghai");
2. timezone_offset_get()
timezone_offset_get函数用于获取指定时区与UTC时间差的秒数,其语法如下:
timezone_offset_get($timezone, $date)
其中$timezone为要获取的时区,$date为要获取的时间。例如,下面的代码可以获取中国时区与UTC时间差的秒数:
echo timezone_offset_get(new DateTimeZone("Asia/Shanghai"), new DateTime("now"));
四、时间戳函数
1. strtotime()
strtotime函数用于将英文文本日期时间格式转换为时间戳,在上面已经讲过,这里就不再赘述。
2. time()
time函数用于获取当前时间的时间戳,在上面已经讲过,这里就不再赘述。
五、系统时间函数
1. microtime()
microtime函数用于获取当前时间的微秒数,其语法如下:
microtime($get_as_float)
其中$get_as_float参数可选,为true时返回一个浮点数,为false时返回一个字符串。例如,下面的代码可以获取当前时间的微秒数:
echo microtime(true);
2. gettimeofday()
gettimeofday函数用于获取当前时间和时区信息,其语法如下:
gettimeofday($return_float)
其中$return_float参数可选,为true时返回一个浮点数,为false时返回一个数组。返回的数组包含以下元素:
- sec:秒
- usec:微秒
- minuteswest:西部时区的分钟数
- dsttime:夏令时的分钟数
例如,下面的代码可以获取当前时间和时区信息:
print_r(gettimeofday(false));
六、睡眠函数
1. sleep()
sleep函数用于延迟代码执行,其语法如下:
sleep($seconds)
其中$seconds为要延迟的秒数。例如,下面的代码会让程序睡眠5秒:
sleep(5);
2. usleep()
usleep函数用于延迟代码执行,其语法如下:
usleep($microseconds)
其中$microseconds为要延迟的微秒数。例如,下面的代码会让程序睡眠0.5秒:
usleep(500000);
七、等待函数
1. wait()
wait函数用于等待子进程完成,其语法如下:
wait($status)
其中$stauts为子进程的状态。例如,下面的代码会等待子进程完成:
wait($status);
2. sleep()
sleep函数也可以实现等待的功能,具体使用方式同上述第六节中的讲解,这里不再赘述。
以上就是PHP中常用的时间相关函数的讲解,希望本文对读者有所帮助。
