Doctrine_Expression问题原则2“没有打开的连接”

问题描述

| 我的Zend PHP堆栈使Doctrine2正常工作。 但是,如果我想使用Doctrine_Expression,
$item->setDateCreated(new Doctrine_Expression(\'Now()\'));
然后出现以下错误“没有打开的连接”。 这是堆栈跟踪:
#0 D:\\data\\wamp\\bin\\PHP\\PHP5.3.5\\PEAR\\Doctrine\\Manager.PHP(264): Doctrine_Manager->getCurrentConnection()
#1 D:\\data\\wamp\\bin\\PHP\\PHP5.3.5\\PEAR\\Doctrine\\Expression.PHP(72): Doctrine_Manager::connection()
#2 D:\\data\\wamp\\bin\\PHP\\PHP5.3.5\\PEAR\\Doctrine\\Expression.PHP(116): Doctrine_Expression->getConnection()
#3 D:\\data\\wamp\\bin\\PHP\\PHP5.3.5\\PEAR\\Doctrine\\Expression.PHP(133): Doctrine_Expression->parseExpression(\'Now()\')
#4 D:\\data\\wamp\\bin\\PHP\\PHP5.3.5\\PEAR\\Doctrine\\Expression.PHP(89): Doctrine_Expression->parseClause(\'Now()\')
#5 D:\\data\\wamp\\bin\\PHP\\PHP5.3.5\\PEAR\\Doctrine\\Expression.PHP(60): Doctrine_Expression->setExpression(\'Now()\')
#6 D:\\data\\work\\gazette\\Projects\\norskTipping\\admin-system\\code\\application\\library\\MagicHeads\\Knalledge\\Models\\Tagging.PHP(91): Doctrine_Expression->__construct(\'Now()\')
...
#14 {main}
我试图添加连接
$item->setDateCreated(new Doctrine_Expression(\'Now()\',$this->_em->getConnection()));
但是,碰巧它是Doctrine \\ DBAL \\ Connection类型的连接,而Doctrine_Expression需要Doctrine_Connection 如何获取Doctrine_Connection并将其提供给Doctrine_Expression?     

解决方法

        Doctrine_Expression是Doctrine 1类,不能与Doctrine 2一起使用。这两个版本非常不同,并且不兼容。