Doctrine

Doctrine
Логотип программы Doctrine
Тип PHP library[вд]
Написана на PHP[2]
Операционная система кроссплатформенность
Первый выпуск 13 апреля 2006
Последняя версия
Репозиторий github.com/doctrine/orm
Лицензия лицензия MIT
Сайт doctrine-project.org (англ.)

Doctrineобъектно-реляционный проектор (ORM) для PHP 7.1+, который базируется на слое абстракции доступа к БД (DBAL). Одной из ключевых возможностей Doctrine является запись запросов к БД на собственном объектно-ориентированном диалекте SQL, называемом DQL (Doctrine Query Language) и базирующемся на идеях HQL (Hibernate Query Language).

Пример использования

[править | править код]

Doctrine версии 1.* следует паттерну Active Record для работы с данными[3]. Для примера, если программист хочет создать пользователя в базе данных, он может больше не использовать SQL, а написать следующий PHP код:

 $user = new User();
 $user->name = "john";
 $user->password = "doe";
 $user->save();
 echo "The user with id {$user->id} has been saved.";

Doctrine версии 2.* следует паттерну Data mapper[англ.]. Для создания пользователя может использоваться следующий кодː

 $user = new User();
 $user->setName("john");
 $user->setPassword("doe");
 $entityManager->persist($user);
 $entityManager->flush();
 echo "The user with id {$user->getId()} has been saved.";

Применение

[править | править код]

Doctrine ORM применяется во фреймворках Laravel, Yii, Symfony.

Литература

[править | править код]
  • Jonathan H. Wage, Konsta Vesterinen. Doctrine ORM for PHP. — Sensio SA, 2009. — 522 p. — ISBN 978-2918390039.

Примечания

[править | править код]
  1. Release 3.3.0 — 2024.
  2. The doctrine Open Source Project on Open Hub: Languages Page — 2006.
  3. Introduction — Doctrine 1.2.4 documentation. Дата обращения: 17 февраля 2016. Архивировано из оригинала 25 марта 2016 года.