我正在尝试将括号转换为连字符,而是日期变量丢失其值:
echo $date; // outputs 26/05/2015 10:41:56sd2
$date = date('Y-m-d H:i:s', $date);
echo $date; // outputs 969-12-31 18:00:26
答案 0 :(得分:4)
date()
的第二个参数必须是Unix时间戳。你给它一个字符串。
该日期格式无效,无论如何都无法使用strtotime()
。使用/
作为日期分隔符时,假定使用美国格式。没有第26个月。
其中的最后三个字符在我所知道的任何标准中都无效,除非您专门考虑它,否则将破坏任何日期功能(您可以使用date()
或strtotime()
)
使用DateTime::createFromFormat()
执行此操作:
$date = DateTime::createFromFormat('d/m/Y H:i:s???', '26/05/2015 10:41:56sd2');
echo $date->format('Y-m-d H:i:s');