可捕获致命错误的 FindAll() 结果:DateTime 类的对象无法转换为字符串
Posted
技术标签:
【中文标题】可捕获致命错误的 FindAll() 结果:DateTime 类的对象无法转换为字符串【英文标题】:FindAll() result on Catchable Fatal Error: Object of class DateTime could not be converted to string 【发布时间】:2013-11-18 12:38:29 【问题描述】:我做了一个简单的 findAll 函数,我得到以下错误:
可捕获的致命错误:无法转换类 DateTime 的对象 在 vendor\doctrine\orm\lib\Doctrine\ORM\UnitOfWork.php 行中的字符串 第2429章
$em = $this->getDoctrine()->getManager();
$ppk = $em->getRepository('EgBundle:Table')
->findAll();
实体是自动创建的,我没有对这个表实体做任何具体的事情。怎么了?我真的不明白...
编辑:
显然在整数和日期之间存在一个主键。
if ($class->isIdentifierComposite)
(....)
implode (' ', array('idTrn' => '100', 'date' => object(DateTime)))
【问题讨论】:
所有属性都正确配置了吗? 一切都从 Symfony 应用程序自动完成。 是的,可能会出错... 【参考方案1】:http://www.doctrine-project.org/jira/browse/DDC-1209
Doctrine 2 一直要求 id 字段可以转换为字符串, 这不是 DateTime 对象的情况。
这有点令人讨厌:s
编辑:
但是这里有一个最近报告的问题
http://www.doctrine-project.org/jira/browse/DDC-2724
【讨论】:
但是这个问题是一年多以前的事了!这很奇怪。以上是关于可捕获致命错误的 FindAll() 结果:DateTime 类的对象无法转换为字符串的主要内容,如果未能解决你的问题,请参考以下文章
可捕获的致命错误:类 AppBundle\Entity\Categoria 的对象无法转换为字符串
可捕获的致命错误:WP_Error 类的对象无法转换为字符串