我有代码
$dss='2011 04 28 10:00:45';
echo date('Y', strtotime($dss));
Run Code Online (Sandbox Code Playgroud)
它显示1970-为什么?
它显示1970-为什么?
因为格式YYYY MM DD HH:MM:SS不是接受的格式之一strtotime.特别是,它找不到有效的日期字符串.
如果您正在使用PHP 5.3或更高版本,请查看DateTime::createFromFormat(),它采用date格式化字符串并基于该格式创建新的DateTime对象.
如果您坚持使用较低版本的PHP,那么您的"最佳"选择就是笨重strptime.
或者,你可以只是坚持之间的破折号YYYY和MM,然后之间的MM和DD,产生YYYY-MM-DD,完全cromulent格式.