In this tutorial, we will look at how to install Doctrine2 in your PHP project.
This post will make use of Doctrine2's Composer tool.
Installation
First, create a directory for your project.mkdir zainabed cd zainabed
Now, create a composer.json file.
vi composer.json
Then, add the following repository information to it.
{ "require": { "doctrine/orm": "*" } }
You are now ready to use Composer to install Doctrine, but first you must install Composer on your machine.
curl -sS https://getcomposer.org/installer | php
To install Doctrine2, run the following command.
Note: Composer generates a "autoload.php" file to help in the autoloading of all PHP classes in the Doctrine2 ORM project.
php composer.phar install
Note: Composer generates a "autoload.php" file to help in the autoloading of all PHP classes in the Doctrine2 ORM project.
Configuration
First, create a configuration file, configuration.php for Doctrine2 and include autoload.php inside it.
<?php // configuration.php // Include Composer Autoload require_once "vendor/autoload.php";
Then, create the database configuration details, like database name, username and password.
// database configuration $databaseParams = array( 'driver' => 'pdo_mysql', 'user' => 'root', 'password' => '', 'dbname' => 'zainabed', );
Now, specify the entity path where you want all ORM entities to be stored.
Doctrine 2 is now configured and ready to use.
//entity path $entityPath = array("src/Entity");
Create an Entity Manager
ORM's fundamental source is the Entity Manager, which manages interactions between entities and databases.
//annotation configuration $config = Setup::createAnnotationMetadataConfiguration($entityPath, false); //entity manager object $entityManager = EntityManager::create($databaseParams, $config);
Finally, you are ready to use Doctrine2 within your PHP project.
The following is a complete configuration example that includes XML and YAML configuration.
<?php // configuration.php // Include Composer Autoload require_once "vendor/autoload.php"; use Doctrine\ORM\Tools\Setup; use Doctrine\ORM\EntityManager; // database configuration $databaseParams = array( 'driver' => 'pdo_mysql', 'user' => 'root', 'password' => '', 'dbname' => 'zainabed', ); //entity path $entityPath = array("src/Entity"); //annotation configuration $config = Setup::createAnnotationMetadataConfiguration($entityPath, false); //entity manager object $entityManager = EntityManager::create($databaseParams, $config); //xml configuration //$xmlEntituPath = array("/path/to/xml-mappings"); //$config = Setup::createXMLMetadataConfiguration($xmlEntituPath, false); //$entityManager = EntityManager::create($databaseParams, $config); //yml configuration //$ymlEntityPath = array("/path/to/yml-mappings"); //$config = Setup::createYAMLMetadataConfiguration($ymlEntityPath, false); //$entityManager = EntityManager::create($databaseParams, $config);
Doctrine 2 is now configured and ready to use.
Comments
Post a Comment