2

我正在尝试将教义 2 与 Zend 框架混合,并且我正在使用 Zend 自动加载器。所以我所有的实体看起来像

TEST_ORM_Entities_User在下面TEST/ORM/Entites/User.php

但是序列化存在问题,因为所有代理看起来都像

Pocks\ORM\Proxies\TEST_ORM_Entities_UserProxy在下面TEST/ORM/Proxies/TEST_ORM_Entities_UserProxy.php

所以 doctine 找不到我的代理类,当我检查我的缓存时,我发现它已损坏

object(__PHP_Incomplete_Class)#175 (19) {
  ["__PHP_Incomplete_Class_Name"]=>
  string(46) "TEST\ORM\Proxies\TEST_ORM_Entities_UserProxy"

知道如何明确放置代理文件名或解决此问题吗?

4

1 回答 1

1

我们过去也遇到过同样的问题,最终也将我们的应用程序转换为使用命名空间。

我们仍然使用 Zend Framework 1.x 和它的伪命名空间约定,但是由于这个修复,我们所有的应用程序类都被命名了。

现在我们的代码如下所示:

<?php

namespace Application\Form;
use Zend_Form as Form;

class UserForm extends Form
{
    // ...
}

Application\Form\UserForm由于自动加载器修复,我们可以在代码中的任何地方引用这个类!

于 2011-11-30T15:41:08.253 回答