zend 2包括自定义库旧样式

时间:2016-08-26 13:15:21

标签: zend-framework2

我在旧式zend中有自定义库。我的意思是:

/home/my/libs/StandardTypes/UF.php

class StandardTypes_UF{
  ...
}

我试过在Zend 2中使用它

我试过这段代码:

// init_autoloader.php

...
include $zf2Path . '/Zend/Loader/AutoloaderFactory.php';
    Zend\Loader\AutoloaderFactory::factory(array(
        'Zend\Loader\StandardAutoloader' => array(
            'autoregister_zf'   => true,
            'prefixes'          => array(
                'StantardTypes' => '/home/my/libs/StandardTypes',
            ),
        )
    ));
...

//控制器

$st = new \StantardTypes_UF();

我有这个错误:致命错误:未找到类'Beneficio \ Controller \ StantardTypes_UF'

我也是这样试过的:

// Module.php

...
public function getAutoloaderConfig(){
        return array(
            'Zend\Loader\StandardAutoloader' => array(
                'namespaces' => array(
                    __NAMESPACE__   => __DIR__ . '/src/' . __NAMESPACE__,
            ),
                'prefixes' => array(
                    'StantardTypes' => '/home/my/libs/StandardTypes',
                ),              
            ),
        );
    }
...

我有同样的错误。

我无法将libs改为新风格,首先因为它太大了,因为它也用于旧项目。

任何想法如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

问题在于我不能使用项目之外的路径。我将lib StandardTypes放在供应商路径中,它可以工作!

...
'prefixes' => array(
  'StantardTypes' => '/home/my/project/vendor/StandardTypes',
 ), 
....