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

PHP的strtotime()函数 – 如何将日期时间字符串转换为时间戳?

发布时间:2023-06-21 02:46:33

strtotime()函数是PHP中非常有用的一个函数,它可以将日期和时间字符串转换为时间戳。时间戳是一种表示日期和时间的数字,它是从UNIX纪元(1970年1月1日)到当前日期和时间之间所经过的秒数。在PHP中,时间戳是从1970年1月1日00:00:00开始计算的。

虽然PHP提供了很多日期和时间处理函数,但strtotime()函数对于将字符串转换为时间戳来说是非常简单和方便的方法。该函数可以接收一个形如"now"、"tomorrow"、"yesterday"、"next week"、"last tuesday"等的字符串,并返回相应的时间戳。

语法:

strtotime ( string $time [, int $now = time() ] ) : int

参数:

time:要转换为时间戳的日期和时间字符串。

now:可选参数,表示计算时间戳时所使用的基准时间。如果省略该参数,则默认为当前时间。

返回值:

返回一个integer类型的时间戳,表示指定日期和时间的UNIX时间戳(即自1970年1月1日以来经过的秒数)。

下面是一些示例,展示如何使用strtotime()函数将日期和时间字符串转换为时间戳:

1. 将当前时间转换为时间戳:

$timestamp = strtotime('now');

2. 将10分钟后的时间转换为时间戳:

$timestamp = strtotime('+10 minutes');

3. 将明天的日期转换为时间戳:

$timestamp = strtotime('tomorrow');

4. 将下一周的星期二的日期转换为时间戳:

$timestamp = strtotime('next tuesday');

5. 将指定日期和时间字符串转换为时间戳:

$timestamp = strtotime('2022-01-01 12:00:00');

在上述示例中,strtotime()函数将字符串转换为时间戳,并将结果存储在$timestamp变量中。使用strtotime()函数可以轻松地进行时间和日期转换。但是需要注意的是,strtotime()函数有一个缺点,它不能解析某些日期和时间格式。因此,尽管它对大多数常见日期和时间格式都有效,但在处理某些特殊格式时,可能需要使用其他函数或类来解析日期和时间。