Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Zend Framework 2 Module for Doctrine ORM
PHP Shell
tag: 0.3.0

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.travis
config
src/DoctrineORMModule
tests
.travis.yml
Module.php
README.md
UPGRADE.md
autoload_classmap.php
autoload_function.php
autoload_register.php
composer.json

README.md

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

Requirements

Zend Framework 2

Installation

Installation of this module uses composer. For composer documentation, please refer to getcomposer.org. To achieve the task, it currently uses ocramius/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 http://getcomposer.org/installer | php (on windows, download http://getcomposer.org/installer 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)

     'OcraComposer',
     'DoctrineModule',
     'DoctrineORMModule',

    also add following module_paths:

     'vendor/ocramius',
     'vendor/doctrine',
  6. drop vendor/doctrine/DoctrineModule/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.

Usage

Command Line

Access the Doctrine command line as following

./vendor/doctrine/DoctrineModule/bin/doctrine

Service Locator

Access the entity manager using the following di alias:

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

Injection

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!
    }
}
Something went wrong with that request. Please try again.