PHP 将日期字符串转为时间戳
时间: 2023-09-20 19:05:10 浏览: 142
### 回答1:
可以使用 PHP 内置函数 `strtotime()` 将日期字符串转换为时间戳。该函数能够识别许多不同的日期格式,因此在大多数情况下可以直接使用。
例如,将字符串 "2022-11-01" 转换为时间戳:
```
$timestamp = strtotime("2022-11-01");
```
也可以转换更人性化的格式
```
$timestamp = strtotime("next Monday");
```
此外,还可以使用 DateTime 类来将日期字符串转换为时间戳。下面是一个例子:
```
$date = new DateTime("2022-11-01");
$timestamp = $date->getTimestamp();
```
注意,如果输入的日期字符串无法解析,`strtotime()` 函数会返回 `false` ,在使用 `DateTime` 类的情况下,会抛出异常。
### 回答2:
PHP提供了许多函数来将日期字符串转换为时间戳。其中最常用的函数是strtotime()和date_create()。
1. 使用strtotime()函数:
strtotime()函数接受一个日期字符串作为参数,并返回对应的时间戳。它可以将多种日期格式的字符串转换为时间戳。
示例代码:
```
$datetime = "2021-01-01 12:00:00";
$timestamp = strtotime($datetime);
echo $timestamp;
```
输出结果为:
```
1609483200
```
2. 使用date_create()函数:
date_create()函数创建一个DateTime对象,可以从日期字符串中提取时间戳。
示例代码:
```
$datetime = "2021-01-01 12:00:00";
$date = date_create($datetime);
$timestamp = date_timestamp_get($date);
echo $timestamp;
```
输出结果为:
```
1609483200
```
无论是使用strtotime()还是date_create(),都可以将日期字符串转换为时间戳。需要注意的是,字符串的日期格式必须符合PHP中的日期格式规范,否则转换可能会失败。
### 回答3:
在 PHP 中,可以使用 strtotime 函数将日期字符串转换为时间戳。strtotime 函数接受一个日期字符串作为参数,并尝试将其转换为一个 Unix 时间戳。Unix 时间戳是以 1970年1月1日 00:00:00 UTC 为基准的秒数表示。
下面是一个示例,演示如何使用 strtotime 函数将日期字符串转换为时间戳。
```php
$dateString = "2022-12-31";
$timestamp = strtotime($dateString);
```
在上面的代码中,$dateString 变量存储了一个日期字符串,即 "2022-12-31"。然后,我们使用 strtotime 函数将该日期字符串转换为时间戳,并将结果存储在 $timestamp 变量中。
转换后,$timestamp 变量将存储 2022年12月31日 00:00:00 的时间戳值。可以在后续的代码中使用这个时间戳来进行日期和时间的操作。
请注意,strtotime 函数在转换日期字符串时是非常宽松的。它可以接受各种日期和时间格式,并尝试将其转换为时间戳。如果日期字符串无法正确解析,strtotime 函数可能会返回 false。因此,在使用 strtotime 函数之前,需要确保日期字符串是符合标准格式的。
希望以上解答对您有帮助。如果您还有任何问题,请随时追加。
阅读全文