PHP – DateTime :: createFromFormat – 返回根据指定格式格式化的新DateTime对象
这工作:
$var = DateTime::createFromFormat('Ymd','20100809')->getTimestamp();
但这失败了
Call to a member function getTimestamp() on a non-object
$var = DateTime::createFromFormat('Y/m/d H:M:S','2010/08/09 07:47:00')->getTimestamp();
在手头的情况下,M:S部分是错误的.它需要是i:s.见
manual on date().
但是,这突出了一个更深层的概念问题:任一参数中的错误输入都将导致致命错误,这对于生产中的应用程序来说是不良行为.
从createFromFormat
手册:
Returns a new DateTime instance or FALSE on failure.
当调用无法从您的输入构建日期时,不会返回任何对象.
为了避免错误输入上的致命错误,你会(遗憾的是,因为这打破了很好的链接)必须首先检查成功:
$var = DateTime::createFromFormat('Y/m/d H:M:S','2010/08/09 07:47:00'); if ($var instanceof DateTime) echo $var->getTimestamp();