strtotime()无法转换“23/01/2023”
时间: 2023-02-16 19:07:36 浏览: 122
strtotime() 函数默认使用美国日期格式(mm/dd/yyyy),而“23/01/2023”使用的是欧洲日期格式(dd/mm/yyyy),因此 strtotime() 无法将其转换。需要使用其他方法来转换日期格式。
相关问题
php "23/01/2023"格式转“2023-01-23”
可以使用 PHP 内置函数 date() 和 strtotime() 来实现。
先使用 strtotime() 函数将字符串 "23/01/2023" 转换成时间戳,然后使用 date() 函数将时间戳格式化为 "2023-01-23"。
代码示例:
```
$date_string = "23/01/2023";
$timestamp = strtotime($date_string);
$new_date_string = date("Y-m-d", $timestamp);
echo $new_date_string;
```
最后输出结果为:2023-01-23
strtotime 转换时间戳报错
在 PHP 中,strtotime() 函数可以将人类可读的时间格式转换为 UNIX 时间戳,例如:
```php
echo strtotime("2022-01-01 00:00:00"); // 输出 1640995200
```
如果你在使用 strtotime() 函数时遇到错误,可能是由于以下原因之一:
1. 传递给 strtotime() 函数的时间格式不正确。strtotime() 函数只能处理特定格式的时间字符串,例如 "YYYY-MM-DD HH:MM:SS" 或 "now"。如果你传递给它一个无效的时间字符串,它就会返回 false。
2. 你的 PHP 版本太旧。在 PHP 5.1.0 之前,strtotime() 函数无法处理包含时区信息的时间字符串。
3. 你的 PHP 配置不正确。如果你的 PHP 配置中禁用了 Unix 时间戳函数,那么 strtotime() 函数就会失败。
解决方法:
1. 确认你传递给 strtotime() 函数的时间字符串格式正确。如果不确定,可以查看 PHP 官方文档中的时间格式说明。
2. 更新你的 PHP 版本。推荐使用 PHP 7.0 及以上版本。
3. 检查你的 PHP 配置,确保 Unix 时间戳函数可用。可以通过 phpinfo() 函数查看 PHP 配置信息。
阅读全文