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

PHP时间戳函数:如何获取和转换时间戳

发布时间:2023-06-20 12:20:44

时间戳是一种表示时间的数字格式,通常是从 1970 年 1 月 1 日 00:00:00 UTC(协调世界时)起经过的秒数。在程序中经常需要获取和转换时间戳,PHP 中提供了多个函数来处理时间戳,本文将介绍如何获取和转换时间戳。

1. 获取当前时间戳

获取当前时间戳可以使用 PHP 中的 time() 函数,该函数返回当前系统时间的时间戳。示例代码如下:

// 获取当前时间戳
$timestamp = time();
echo $timestamp;

输出结果为当前系统时间的时间戳,例如:1635115212。注意,time() 函数返回的时间戳是以秒为单位的。

2. 将时间戳转换成字符串格式

将时间戳转换成字符串格式可以使用 PHP 中的 date() 函数,该函数按照指定的格式返回时间戳对应的日期和时间。其中, 个参数是日期格式,第二个参数是时间戳(可选,默认为当前时间戳)。示例代码如下:

// 将时间戳转换成字符串格式
$timestamp = 1635115212;
$date = date('Y-m-d H:i:s', $timestamp);
echo $date;

输出结果为时间戳对应的日期和时间,例如:2021-10-24 15:33:32。在日期格式中,Y 表示四位数年份,m 表示两位数月份,d 表示两位数日期,H 表示小时数(24 小时制),i 表示分钟数,s 表示秒数。

3. 将字符串格式转换成时间戳

将字符串格式转换成时间戳可以使用 PHP 中的 strtotime() 函数,该函数将日期时间字符串转换成时间戳。示例代码如下:

// 将字符串格式转换成时间戳
$dateStr = '2021-10-24 15:33:32';
$timestamp = strtotime($dateStr);
echo $timestamp;

输出结果为字符串对应的时间戳,例如:1635115212。在日期时间字符串中,年份和月份可以用斜杠、点、中划线等符号分隔,时间的小时数、分钟数和秒数可以用冒号分隔。

4. 获取指定日期的时间戳

获取指定日期的时间戳可以使用 PHP 中的 mktime() 函数,该函数根据指定的日期时间创建一个时间戳。其中, 个参数是小时数,第二个参数是分钟数,第三个参数是秒数,第四个参数是月份,第五个参数是日期,第六个参数是年份(可选,默认为当前年份),第七个参数是是否使用夏令时(可选,默认不使用)。示例代码如下:

// 获取指定日期的时间戳
$timestamp = mktime(0, 0, 0, 10, 24, 2021);
echo $timestamp;

输出结果为指定日期的时间戳,例如:1635024000。在创建时间戳时,可以只指定年份、月份和日期,而将小时数、分钟数和秒数设为零。

综上所述,PHP 中提供了多个函数来处理时间戳,可以根据需要选择合适的函数。在实际开发过程中,还可以使用第三方库来操作时间和日期,例如 Carbon 库,它提供了更加方便和易用的时间处理方法。