将此字符串转换为时间戳 PHP

2022-08-30 18:00:30

我有这个字符串:“13/10 15:00”,我想将其转换为时间戳,但当我这样做时:

      $timestamp = strtotime("13/10 15:00");

它返回一个空值。


答案 1

在代码中,尝试转换为第 13 个月的第十天,这将返回错误。strtotime()13/10

如果要使用自定义格式解析日期字符串,最好改用 DateTime::createFromFormat():

$dtime = DateTime::createFromFormat("d/m G:i", "13/10 15:00");
$timestamp = $dtime->getTimestamp();

答案 2
  $timestamp = strtotime("13-10-2013 15:00");

这可能很重要:

通过查看各个组件之间的分隔符来消除m / d / y格式的日期的歧义:如果分隔符是斜杠(/),则假定为美国m / d / y;而如果分隔符是短划线 (-) 或点 (.),则假定为欧洲 d-m-y 格式。

为避免潜在的歧义,最好尽可能使用 ISO 8601 (YYYY-MM-DD) 日期或 DateTime::createFromFormat()。

http://uk3.php.net/strtotime


推荐