Данная статья посвящена внедрению ORM Doctrine в ядро CMS WordPress. Все вопросы и утверждения по типу: «А зачем», «А почему», «Да это только наложит дополнительный оверхэд и ничего с этого не выиграешь», возможно, будут проигнорированы:)
Рубрика «doctrine»
Внедрение Doctrine ORM в WordPress
2024-10-28 в 13:16, admin, рубрики: doctrine, orm, php, wordpressПара слов о спецификациях
2021-01-30 в 17:02, admin, рубрики: architecture, doctrine, Doctrine ORM, pattern, php, Specification, symfony, usabilityВсем доброго времени суток! Удивительно, но упоминание о шаблоне "Спецификация" в контексте php встречается крайне редко. А ведь с его помощью можно не только избежать комбинаторного взрыва методов репозитория, но и улучшить переиспользование кода. Я же в свою очередь хотел бы остановиться на еще одной возможности, предоставляемой данным паттерном. С ее помощью можно решить проблему, которая возникает почти в каждом веб-приложении. И лично мне очень не хватало этого знания еще пару лет назад.
Что будет с PHP через 5 лет: мы спросили докладчиков ближайшего московского митапа
2019-11-06 в 11:46, admin, рубрики: cqrs, doctrine, php, ReactPHP, symfony, Блог компании Skyeng, митапы, предсказание будущего, Программирование, Разработка веб-сайтовХэллоуин прошел, а страх остался. Страх и ненависть в pcntl_fork(). Боязнь CSQR. И опасения насчет удаленной работы. Если тоже хотите поговорить об этом, встречаемся вечером 21 ноября на Таганке или на этом ютуб-канале (ссылка на эфир появится за 2 дня до ивента).
А пока — есть время познакомиться. Мы попросили докладчиков рассказать про самое страшное событие в их карьерах разработчиков, а также включить нострадамус-mode и дать свой прогноз о развитии языка. У одного докладчика вышла Java. Детали и остальные ответы — под катом.
Читать полностью »
Спецификации в PHP
2019-07-08 в 5:39, admin, рубрики: DDD, doctrine, Doctrine ORM, php, Программирование, проектирование, Проектирование и рефакторинг, разработка, спецификацииКратко о спецификациях:
Спецификация — это шаблон проектирования, с помощью которого можно отразить правила бизнес-логики в виде цепочки объектов, связанных операциями булевой логики. Спецификации позволяют избавится от повторяющихся, однотипных методов в репозитории и от дублирования бизнес-логики.
На сегодня существует два (если знаете другие проекты, напишите пожалуйста в комментариях) успешных и популярных проекта на PHP, позволяющих описывать бизнес-правила в спецификациях и фильтровать наборы данных. Это RulerZ и Happyr Doctrine Specification. Оба проекта являются мощными инструментами со своими преимуществами и недостатками. Сравнение этих проектов потянет на целую статью. Здесь же я хочу рассказать, что нам привнес новый релиз в Doctrine Specification.
Курсоры БД в Doctrine
2019-06-11 в 8:06, admin, рубрики: cursor, database, doctrine, Doctrine ORM, php, postgresql, symfony, Блог компании Lamoda
Используя курсоры, вы сможете порционно получить из БД и обработать большое количество данных, не расходуя при этом память приложения. Уверен, перед каждым веб-разработчиком хотя бы раз вставала подобная задача, передо мной тоже — и не раз. В этой статье я расскажу, в каких задачах курсоры могут быть полезны, и дам готовый код по работе с ними из PHP + Doctrine на примере PostrgeSQL.
PHP-Дайджест № 157 (20 мая – 3 июня 2019)
2019-06-02 в 22:22, admin, рубрики: doctrine, laravel, php, PHP 7.4, PHP-FIG, php-дайджест, phpstorm, symfony, yii, дайджест, конференции, Разработка веб-сайтовСвежая подборка со ссылками на новости и материалы. В выпуске: обновления безопасности PHP, коммерческая компания Doctrine, PhpStorm 2019.2 EAP, Symfony 4.3, порция полезных инструментов, видеозаписи, и многое другое.
Приятного чтения!
DoctrineSolrBundle — поиск по Doctrine entity на базе Solr в Symfony2
2018-04-01 в 6:37, admin, рубрики: doctrine, php, search, solr, symfony, symfony2 bundleDoctrineSolrBundle
Добрый день, хочу представить свой symfony 2 бандл для автоматической синхронизации Doctrine entity в Solr и последующим поиском. Бандл предназначен для работы с Solr на уровне Doctrine entity и позволяет избежать написания низкоуровневых запросов в solr. Процесс установки и подробную документацию можно посмотреть на github.
Возможности
Реализованы основные (не все) возможности поиска стандартного парсера запросов Solr:
— Wildcard Searches
— Fuzzy Searches
— Range Searches
— Boosting a Term with ^
Также реализована поддержка SuggestComponent
Читать полностью »
Использование событийной модели в Doctrine 2 + Symfony 3
2017-10-08 в 20:38, admin, рубрики: doctrine, Doctrine ORM, php, symfonyДавайте представим ситуацию: у вас есть заказ в интернет магазине (Entity). Заказ имеет некий статус. При смене статуса заказа необходимо провести кучу сопутствующих действий, например:
- сохранить в заказе дату последнего изменения
- записать в историю по заказу информацию о смене статуса
- отослать письмо / sms клиенту
- вызвать метод API службы доставки / платежной системы / партнера и т.д.
Возникает вопрос как все это правильно организовать с точки зрения программного кода.
Все ниже описанное справедливо для Doctrine 2 и Symfony > 3.1
Doctrine Specification Pattern или ваш реюзабельный QueryBuilder
2017-07-29 в 13:56, admin, рубрики: design patterns, doctrine, Doctrine ORM, php, symfonyЯ постараюсь максимально коротко рассказать о том, как можно использовать этот паттерн с нашей любимой Doctrine на примерах и почему так делать — true.
Давайте представим себе базовый кейс:
1. У нас есть: сущность «Дом», сущность «Квартира в доме», сущность «Застройщик», сущность «Регион».
2. У нас есть задача: иметь возможность получить всех застройщиков, иметь возможность получить все занятые регионы застройщиком, уметь возможность получить все дома, которые принадлежат застройщику и все доступные регионы вообще в принципе, где ведутся продажи домов.
3. У нас есть правила от бизнеса:
Читать полностью »
ЧПУ (SEF URLs) в Symfony 3 — автогенерация slug, настройка и маршрутизация
2017-06-04 в 21:38, admin, рубрики: doctrine, Doctrine ORM, doctrineextension, php, sef urls, slug, symfony, symfony 3, чпу, метки: slugВсем доброго времени суток!
Третьего дня мне понадобилось провести блиц вебинар на тему ЧПУ в Symfony. Вообще время вебинара у меня ограничено двумя часами, при этом я должен был рассказать еще и про автогенерацию CRUD функционала (scaffolding) в той же Symfony, и про простейший способ создать постраничность. Это создало проблему, так как я знаю как сделать ЧПУ «ручками», не прибегая к автоматизированным под эту задачу инструментам, но рассказ получился бы долгий и оказались бы затянутыми в обсуждение лишние темы. Поэтому я пошел спрашивать у Интернета как сделать все проще. И вот я оказался в той редкой ситуации, когда такая популярная платформа как Symfony не имеет банального обучающего материала на тему «ЧПУ в три клика». Смотрел так же и на английском языке, но там тоже пусто (может плохо искал — время было ограничено). В общем я справился с поиском разрозненного материала по данной теме, а так же со сбором его в единое повествование, так что почему бы не поделиться со всеми?