Добавление новых php-расширений в Homestead

Homestead — это набор конфигов от сообщества Laravel виртуальной машины на базе Vagrant. Новичкам иногда сложно сходу добавить новый функционал в виртуальную машину на базе Homestead. Для примера дан простой набор шагов по добавлению php-расширения APCu в Homestead. Оно используется, например, в Symfony. Настраиваем Homestead Находим в папке с Homestead файл after.sh и добавляем нужные строки: #Install APCu sudo apt-get -y \ -o Dpkg::Options::="--force-confdef" \ -o Dpkg::Options::="--force-confold" \ install php-apcu Пересобираем виртуальную машину В терминале в папке с Homestead выполянем: ...

21 марта 2020 г.

Отладка кода в docker-контейнере из NetBeans

Я уже немного писал о NetBeans тут . Данная IDE умеет хорошо дружить с Xdebug, в связке с которым очень удобно отлаживать php-код. Основы успешно описаны, например, здесь. Все интереснее, когда код приходится отлаживать не на локальной машине, а внутри docker-контейнера. Особенно, если нужно отладить cli-скрипт внутри контейнера. Для успешной отладки следует: Настроить docker-контейнер с Xdebug внутри; Настроить Xdebug внутри контейнера; Настроить NetBeans. При обычной отладке с использованием браузера и при отладке cli-скрипта настройки будут слегка отличаться. Итак, поехали. ...

27 января 2018 г.

Реализация RESTful API в Yii2

Yii2 из коробки предоставляет удобный фреймворк для построения REST API вашего сервиса. Ниже я опишу как быстро начать его использовать. Предварительная настройка Для начала работы достаточно базового шаблона Yii2. Создание проекта и настройку виртуального хоста я описывать не буду и перейду сразу к настройке REST. После скачивания проекта настроим компоненту user в файле web.php. Добавим туда следующие строки: 'enableSession' => false, 'loginUrl' => null, Первая строка отключает сохранение состояния пользователя на сервере: одно из требований архитектуры REST. ...

7 января 2018 г.

Основы PHP_CodeSniffer

В некоторых компаниях есть большая база долгоиграющих и постоянно изменяющихся проектов. Без неусыпного контроля база кода рискует превратиться в месиво из малочитаемых файлов. Вручную проверять код на соответствие стандартам занятие достаточно утомительное. Быстро появляется потребность в атоматизации процесса. PHP_CodeSniffer - это инструмент для проверки кода на соответствие принятым соглашениям и (в некоторых случаях) автоматического его исправления после проверки. Установка и запуск В самом простом случае можно выполнить такой код в папке с исходниками проекта: ...

18 ноября 2017 г.

Неочевидные моменты при работе с assets в Yii2

Недавно пришлось настраивать сжатие ассетов Yii2 на одном из проектов. Для этого во фреймворке предусмотрен удобный cli-интерфейс. Работа с ним вкратце описана в документации. Ниже перечислен ряд моментов, которые для меня оказались не очевидны. Advanced-шаблон и алиас @app В проекте я использую advanced-шаблон. Он позволяет разделять проект на три части: Для пользователя (frontend) Для администраторов и контент-менеджеров (backend) Для работы с cli-интерфейсом приложения (console) Для каждой из частей проекта так же предусмотрены алиасы @frontend, @backend и @console соответственно. ...

24 февраля 2017 г.