Switch branches/tags
Find file
Fetching contributors…
Cannot retrieve contributors at this time
76 lines (59 sloc) 2.41 KB

DoctrineORM Module for Zend Framework 2

Master: Build Status

The DoctrineORMModule module intends to integrate Doctrine 2 ORM with Zend Framework 2 quickly and easily. The following features are intended to work out of the box:

  • Doctrine ORM support
  • Multiple ORM entity managers
  • Multiple DBAL connections
  • Support reuse existing PDO connections in DBAL


Zend Framework 2


Installation of this module uses composer. For composer documentation, please refer to To achieve the task, it currently uses OcraComposer to integrate your application with composer. This may change in future.

Installation steps

  1. cd my/project/directory

  2. create a composer.json file with following contents:

        "require": {
            "doctrine/DoctrineORMModule": "dev-master"
  3. install composer via curl -s | php (on windows, download and execute it with PHP)

  4. run php composer.phar install

  5. open my/project/directory/configs/application.config.php and add following keys to your modules (in this order)

  6. drop vendor/doctrine/DoctrineORMModule/config/module.doctrine_orm.local.config.php.dist into your application's config/autoload directory, rename it to module.doctrine_orm.local.config.php and make the appropriate changes.

  7. create directory my/project/directory/data/DoctrineORMModule/Proxy and make sure your application has write access to it.


Command Line

Access the Doctrine command line as following


Service Locator

Access the entity manager using the following di alias:

$em = $this->getLocator()->get('Doctrine\ORM\EntityManager');


You can also inject the EntityManager directly in your controllers/services:

class MyController extends \Zend\Mvc\Controller\ActionController
    public function __construct(\Doctrine\ORM\EntityManager $em) {
        $this->em = $em;
        // now you can use the EntityManager!