Архивы по рубрикеPHP

Оптимизация Symfony приложения с помощью OPcache и APCu

В этой статье я расскажу как ускорить время ответа сервера в 20-40 раз. Для начала необходимо установить PHP 7.2 и добавить в него расширения OPcache и APCu Я использую Docker.

Как ускорить тестирование сущности в symfony 4

Статья о модульном тестировании сущности в symfony 4 относительно валидации. Можно тестировать корректную обработку валидных и на невалидных данных в функциональных тестах. Но это занимает много времени, так как загружается все приложение со всеми зависимостями, база данных и т.д. и т.п. Как ускорить тестирование?

Как добавить новую опцию во все консольные команды в Symfony 3

Иногда требуется добавить опцию или аргумент в консольные команды, но прописывать в каждую команду, если их 100+ или это вендорные консольные команды , долго или невозможно. Хорошим решением в данном случае будет использование слушателя событий.

Symfony 2 и 3. Как использовать сервис-контейнер в конструкторе контроллера

Бывают ситуации, когда в конструкторе контроллера нужно вызвать сервис-контейнер, но выводится ошибка:

Есть простое решение данной проблемы.

Сортировка массива объектов по свойству

Если есть массив объектов и необходимо его отсортировать по полю (или нескольким), то то для этого существует функция usort ([массив], callable функция). Ниже описан пример сортировки массива объектов с помощью статического метода в классе объекта.

Symfony 2. Мультиязычность контента

Недавно передо мной стояла задача сделать мультиязычность контента у сайта, написанного с использованием фреймворка symfony 2. Из мануалов было ясно, что встроенная мультиязычность подходит только для перевода интерфейсов. Мне нужна возможность определения у каких полей сущностей будет перевод, а у каких не будет перевода. Нашел библиотеку Doctrine2 Behaviors от KnpLabs. В документации есть инструкция по […]

Yii2 проверка на уникальность сочетания полей

Как то мне понадобилось сделать такую валидацию, что бы уникальными были не поля по отдельности, а комбинация полей. Когда в контролер приходят данные из формы с ними надо что-то сделать – загрузить в соответствующую модель, проверить на валидность, как-нибудь так:

Важное замечание: при этом в модель загружаются только те поля (так называемые безопасные), для которых указаны […]