如何将Zendframework 2库与Symfony 2集成?

4
我该如何将zendframework 2库集成到我的Symfony 2应用程序中?如何自动加载并使用它?我想要使用一些类。
2个回答

5
为了将Zendframework 2集成到Symfony 2中,如果您正在使用Symfony标准分发版,请在项目根目录的deps文件中添加以下内容:
[zf2]
    git=https://github.com/zendframework/zf2.git

现在,运行以下命令来更新供应商库:
php bin/vendors update

如果您没有使用Symfony标准版发行版,则需要在vendor文件夹中从github克隆。接下来,将Zend命名空间添加到app/autoload.php文件中,以便可以自动加载这些库。
$loader->registerNamespaces(array(
    ...
    'Zend' => __DIR__ . '/../vendor/zf2/library',
));

完成后,您可以使用zendframework库。例如,我将展示在默认Symfony 2应用程序中使用Zend\Json类的用法。 打开src/Acme/DemoBundle/Controller/DemoController.php并编辑indexAction方法的代码如下:

use Zend\Json\Json;
...
public function indexAction()
{
    $data = array('zendframework2' => 'symfony2');
    $encodedData = Json::encode($data);
    var_dump($encodedData);
    return array();
}

在这个例子中,我使用zendframework类来将一个数组转换为json。

1
为了完整性:如果您正在使用2.1版本,则只需将zendframework/zendframework添加到您的composer.json文件中并进行更新即可。 - Maerlyn

3

对于Symfony 2.1,您需要在composer.json文件中的require下添加zendframework/zendframework。如果您只需要几个包而不是整个库,则应将Zend库的url添加到repositories中,如下所示:

"repositories": [
    {
        "type": "composer",
        "url": "http://packages.zendframework.com/"
    }
],
"require": {
    //...
    "zendframework/zend-log":"2.*",

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接