我有这个字符串:"13/10 15:00",我想将其转换为时间戳,但是当我这样做时:
$timestamp = strtotime("13/10 15:00");
它返回一个空值。
在您的代码中,strtotime()
尝试将13/10
转换为第 13 个月的第十天,这将返回错误。
如果要使用自定义格式解析日期字符串,最好改用 DateTime::createFromFormat():
$dtime = DateTime::createFromFormat("d/m G:i", "13/10 15:00");
$timestamp = $dtime->getTimestamp();
$timestamp = strtotime("13-10-2013 15:00");
这可能很重要:
m/d/y 或 d-m-y 格式的日期通过查看 各个组件之间的分隔符:如果分隔符是 斜杠 (/),则假设为美国 m/d/y;而如果 分隔符是破折号 (-) 或点 (.),然后是欧洲 d-m-y 格式 是假设的。
为避免潜在的歧义,最好使用 ISO 8601 (YYYY-MM-DD) 日期或日期时间::createFromFormat() 如果可能。
http://uk3.php.net/strtotime