如何将第三方库与zf2集成?

时间:2015-12-08 10:31:25

标签: php zend-framework2

我正在开发一个需要与第三方库集成的zf2项目。该库与php命名空间不兼容。

我发现很少有文章描述命名空间兼容库的集成。根据它们,如果库与命名空间兼容,那么我们可以通过在Module.php中添加一个映射来集成它,如下所示。

'Zend\Loader\StandardAutoloader' => array(
    'namespaces' => array(
        'MyLibrary' => __DIR__ .'/path/to/library',
    ),
),

我试过了,然后我必须为库中的每个文件设置名称空间,以便能够使用库。但修改别人的图书馆并不是一个好习惯。

所以,请帮我集成一个非命名空间兼容的php库和zf2

1 个答案:

答案 0 :(得分:1)

我是这样做的:

在Module.php中,将一个ClassMapAutoloader添加到getAutoloaderConfig函数中。

public function getAutoloaderConfig() {
    return array(
        'Zend\Loader\ClassMapAutoloader' => array(
            __DIR__ . '/autoload_classmap.php',
        ),
    );
}

然后在同一级别创建一个autoload_classmap.php,其模块如下:

return array(
    'MyClass'         => __DIR__ . '/libs/MyClass.php',
);