Совет по Laravel: Неявное привязывание Enum = чистые и типобезопасные маршруты
Определите
Элегантно, просто, мощно✌️
👉 @PHPgx | #tips
Определите
enum на основе строки, используйте его в качестве type hint в определении маршрута — и Laravel автоматически проверит сегменты маршрута, возвращая 404 для недопустимых значений.Элегантно, просто, мощно
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤2👎2
Хардкорная игра-тренажёр для PHP-разработчиков
Наткнулся на забавную игру в формате тренажёра, цель которой — проходить задания для прокачки навыков кодинга на языке PHP.
Правило всего одно: нужно переписать функцию так, чтобы она вернула true.
С каждым уровнем сложность заданий растёт. Никаких объяснений и руководств, всё по хардкору
👉 @PHPgx
Наткнулся на забавную игру в формате тренажёра, цель которой — проходить задания для прокачки навыков кодинга на языке PHP.
Правило всего одно: нужно переписать функцию так, чтобы она вернула true.
С каждым уровнем сложность заданий растёт. Никаких объяснений и руководств, всё по хардкору
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤3
This media is not supported in your browser
VIEW IN TELEGRAM
Большая актуальная базу бесплатных API, которая обновляется ежедневно
Тут собрано аж 363 бесплатных API на все случаи жизни: от игр и погоды до финансов и здоровья.
Алгоритмы присваивают рейтинг каждому API на основе надежности, частоты ошибок и времени отклика
Если API перестает работать или становится платным, он теряет рейтинг и удаляется с сайта
Переходите и смотрите сами: https://www.freepublicapis.com/
👉 @PHPgx | #ресурсы
Тут собрано аж 363 бесплатных API на все случаи жизни: от игр и погоды до финансов и здоровья.
Алгоритмы присваивают рейтинг каждому API на основе надежности, частоты ошибок и времени отклика
Если API перестает работать или становится платным, он теряет рейтинг и удаляется с сайта
Переходите и смотрите сами: https://www.freepublicapis.com/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤2🔥2
Ещё один клёвый тренажёр+учебник по SQL
Тут можно потренироваться в хитрых джойнах, агрегациях и понабивать руку. Интерфейс очень приятный и позволяет потыкать схему БД, даёт подсказки как в коде, так и непосредственно по решению
В более сложные штуки (к примеру, в оконные функции) этот ресурс не лезет. Ну и запросы даже в самых сложных задачках получаются не сказать чтобы громоздкие
👉 https://sql-academy.org/ru/trainer
👉 @PHPgx | #ресурсы
Тут можно потренироваться в хитрых джойнах, агрегациях и понабивать руку. Интерфейс очень приятный и позволяет потыкать схему БД, даёт подсказки как в коде, так и непосредственно по решению
В более сложные штуки (к примеру, в оконные функции) этот ресурс не лезет. Ну и запросы даже в самых сложных задачках получаются не сказать чтобы громоздкие
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍3
Ваш файл
ЧЕТЫРЕ возможных решения☕️
РЕШЕНИЕ 1: Команды в терминале
Если нужно что-то найти ОДИН РАЗ, используйте одну из этих команд:
🔹
🔹
🔹
РЕШЕНИЕ 2: Изменение режима логирования на "daily"
В файле
Это заставит Laravel создавать новый лог-файл каждый день (например,
РЕШЕНИЕ 3: Пакет Log Viewer
Пакет opcodesio/log-viewer предоставляет удобную панель для просмотра логов.
РЕШЕНИЕ 4: Внешние платные инструменты
Сервисы ОТСЛЕЖИВАНИЯ ОШИБОК, которые автоматически собирают и организуют ошибки:
🔹 Sentry
🔹 Bugsnag
🔹 Flare
Сервисы ДЛЯ УПРАВЛЕНИЯ ЛОГАМИ:
🔹 Papertrail
🔹 Loggly
🔹 LogDNA
Есть что-то, что вы бы добавили в этот список?
👉 @PHPgx
laravel.log слишком большой? Трудно читать/искать нужную информацию?ЧЕТЫРЕ возможных решения
РЕШЕНИЕ 1: Команды в терминале
Если нужно что-то найти ОДИН РАЗ, используйте одну из этих команд:
tail -n 100 storage/logs/laravel.log – показать последние 100 строкtail -f storage/logs/laravel.log – потоковое обновление лога в реальном времениgrep -i "error" storage/logs/laravel.log – поиск ошибок (без учета регистра)РЕШЕНИЕ 2: Изменение режима логирования на "daily"
В файле
.env установите:LOG_CHANNEL=daily
Это заставит Laravel создавать новый лог-файл каждый день (например,
laravel-2025-01-01.log).РЕШЕНИЕ 3: Пакет Log Viewer
Пакет opcodesio/log-viewer предоставляет удобную панель для просмотра логов.
РЕШЕНИЕ 4: Внешние платные инструменты
Сервисы ОТСЛЕЖИВАНИЯ ОШИБОК, которые автоматически собирают и организуют ошибки:
Сервисы ДЛЯ УПРАВЛЕНИЯ ЛОГАМИ:
Есть что-то, что вы бы добавили в этот список?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤2🔥1
Laravel использует
Это также может быть очень полезно при разработке приложения, в котором пользователи могут настраивать выполнение задач с нужной им периодичностью.
Вот как я использовал его, чтобы дать пользователям возможность создавать и запускать автоматические отчёты по расписанию
👉 @PHPgx
Cron\CronExpression для определения времени выполнения запланированных задач.Это также может быть очень полезно при разработке приложения, в котором пользователи могут настраивать выполнение задач с нужной им периодичностью.
Вот как я использовал его, чтобы дать пользователям возможность создавать и запускать автоматические отчёты по расписанию
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤2🌭1
This media is not supported in your browser
VIEW IN TELEGRAM
Laravel Wayfinder
На той неделе команда Laravel выпустила новый инструмент — Wayfinder — в бета-версии:
https://github.com/laravel/wayfinder
Он генерирует TypeScript-функции, которые можно импортировать на фронтенде для ваших контроллеров и маршрутов
👉 @PHPgx
На той неделе команда Laravel выпустила новый инструмент — Wayfinder — в бета-версии:
https://github.com/laravel/wayfinder
Он генерирует TypeScript-функции, которые можно импортировать на фронтенде для ваших контроллеров и маршрутов
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤3
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤4
Теперь PHPUnit по умолчанию использует in-memory SQLite базу данных для тестов
Ранее эти настройки в файле
👉 @PHPgx
Ранее эти настройки в файле
phpunit.xml были закомментированы. Теперь они будут активны по умолчаниюPlease open Telegram to view this post
VIEW IN TELEGRAM
❤9👍3🔥1
1.
git init – инициализация нового Git-репозитория в текущем каталоге.2.
git add – добавление изменений в индекс (staging area).3.
git commit – фиксация проиндексированных изменений с комментарием. 4.
git push – отправка локальных изменений в удалённый репозиторий.5.
git pull – получение изменений из удалённого репозитория и их слияние с локальной веткой.6.
git remote – добавление, просмотр или удаление удалённого репозитория.7.
git branch – вывод списка веток, создание новой ветки и переключение на неё.8.
git fetch – загрузка изменений из удалённого репозитория без их слияния.9.
git checkout – переключение на указанную ветку.10.
git merge – слияние указанной ветки с текущей.11.
git status – отображение текущего состояния репозитория и неподтверждённых изменений.12.
git reset – откат текущей ветки до указанного коммита.Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤6