При написании автоматических тестов к PHP приложению могут возникать различные сложности. Одной из таких сложностей может быть зависимость от внешнего сервиса, к которому (используя его API) происходит обращение по HTTP. Конечно делать реальные запросы к сторонним ресурсам в тестах – не выход. Поэтому в определенный момент придется прибегнуть к созданию различных заглушек. В этой статье попробуем собрать различные способы использования заглушек.
Читать далееМетка: php
Laravel + Vue в Docker с помощью Sail
Ранее была опубликована статья, вкоторой описывалась настройка fullstack приложения Laravel + Vue с выносом Laravel на поддомен. Vue приложение располагалось на основном домене, а api на Laravel – на поддомене backend.
Но Laravel имеет в своем распоряжении инструмент sail, который позволяет легко настроить docker окружение не прибегая даже, зачастую, к составлению файлов Dockerfile и docker-compose.yml.
Читать далееФункции статических анализаторов PHP
В предыдущей статье о статическом анализе в php о таких инструментах было рассказано совсем мало. В этой будет сделена попытка углубиться и получить больше информации о том, какие возможности они дают.
Читать далееНастройка xDebug с Docker в PHPStorm
Не смотря на то, что настройка xDebug в связке со средой разработки позволяет гораздо эффективнее вести отладку php приложения, не так много разработчиков используют это. Причиной часто является сложность данной настройки. Сначала я составил шпаргалку для себя. Но подумал, что может пригодиться многим. Итак в этой статье будет описана совместная настройка PHPStorm (IDEA), Docker и xDedug.
Читать далееНастройка docker для laravel и vue проекта
Работая над несколькими проектам можно довольно быстро столкнуться с тем, что версии нужного ПО на рабочей машине подходят не ко всем проектам. В последние годы все шире и шире используется docker (и docker-compose для оркестрации контейнеров), чтобы настроить окружение для работы над проектом локально и решить проблему существования разных версий нужных пакетов одновременно. Дабы не думать над каждой опцией настроек каждый раз удобно иметь под рукой какие-либо заготовки. В этой статье будет представлена одна из них.
Читать далееСтатический анализ для PHP
В этой статье можно узнать что такое статические анализаторы кода, какова от них польза в php, какие для этого есть готовые инструменты. Будет кратко описан каждый инструмент, его возможности и процесс работы с ним.
Читать далееPHP 8.1 Enum
Хорошие новости! В PHP появился тип Enum. Многие наверняка знакомы с таким типом данных в MySQL. Ранее, чтобы в php коде обрабатывать данные данного типа из БД, приходилось либо вовсе работать со строками (в самом плохо случае) либо описывать константы и объединять в классы. Однако проверка типов в этих случаях не работала как надо. Ведь все еще передать как аргумент в какой-либо метод можно любую строку вместо корректного значения. Чтобы заставить работать проверку типов как надо появились даже пакеты.
Читать далееВнедрение зависимостей
Внедрение зависимостей (Dependency injection, или DI) — это принцип настройки объекта, при котором поля объекта задаются внешним объектом (сущностью) в противопоставление самонастройке объектов.
Читать далееLaravel Zero
Laravel Zero был создан и поддерживается Nuno Maduro и представляет собой микро-фреймворк, который обеспечивает элегантную отправную точку для вашего консольного приложения.
Читать далееTorch – компоненты Illuminate вне Laravel
Репозитарий Torch – это инструкции и примеры по использованию компонентов Illuminate
вне Laravel-приложений. Это бывает полезно, например, в каких-либо старых (legacy) приложениях, которые, в то же время,поддерживают php 7, чтобы не изобретать велосипед и использовать уже знакомые по Laravel компоненты.
Laravel Console Logger
Пакет Laravel Console Logger предоставляем механизм логирования и извещений для консольных команд. В Laravel вывод штатными средствами происходит в общий лог. Для консольных команд это чаще всего не удобно. Эту проблему пакет решает успешно. Кстати, использует все тот же Monolog.
Читать далееLaravel Console Mutex
Пакет Laravel Console Mutex – предотвращает одновременное выполнение одной и той же команды. Это помогает избежать различного рода конфликтов в данных и лишнего расходования ресурсов сервера.
Читать далее