Laravel World
8.45K subscribers
1.25K photos
25 videos
9 files
2.07K links
Laravel & PHP news
Download Telegram
Martin Joo - Common Mistakes in Laravel.pdf
219.8 KB
Мартин собрал в одну книгу самые распространенные ошибки при разработке на Laravel, разделенные на три основные группы: Производительность, Развертывание и Обслуживание.
147
Релиз Inertia 1.0

🏆 Упрощенная структура библиотеки
Улучшенная поддержка TypeScript
🏎 Поддержка Svelte SSR
⌛️ Индикатор прогресса теперь в ядре
🐆 SSR-cервер теперь в ядре

Инструкция по обновлению: https://inertiajs.com/upgrade-guide
35
В Laravel 9 появился новый способ создания кастомных правил валидации Invokable Rules. В Laravel 10 он станет дефолтным. В статье рассказано, как тестировать такие правила.
https://freek.dev/2415-how-to-test-laravels-invokable-rules
39
Простая альтернатива мягкому удалению: deleted_record_insert
https://brandur.org/fragments/deleted-record-insert

На основе этого подхода Spatie выпустили пакет «Laravel deleted models», который будет хранить удаленные записи в отдельной таблице.
45
Релиз Laravel 9.48
https://github.com/laravel/framework/releases/tag/v9.48.0

+релизы:
Breeze 1.18
Echo 1.15
Horizon 5.16
Jetstream 2.15
Nova 4.21
Passport 11.5.1
Sail 1.18.1
Sanctum 3.2.1
Scout 9.8
Socialite 5.6
Spark Paddle 3.1
Spark Stripe 3.1
Telescope 4.12
Valet 3.3
26
В Laravel 9.48 добавлены два новых метода incrementEach() и decrementEach() в Конструктор запросов. Они позволяют увеличивать/уменьшать несколько полей за одну операцию.
51
Зачем и как использовать Объекты передачи данных в Laravel

Data Transfer Object (Объект передачи данных) — паттерн программирования, который, при правильном использовании, может улучшить качество код и удобство его дальнейшего сопровождения. В этой статье мы узнаем, почему нужно использовать DTO и как это сделать в Laravel.

https://laravel.demiart.ru/data-transfer-objects-in-laravel-why-and-how/
71
Команда Laravel на конференции Laracon в Лиссабоне
James Brooks
Dries Vints
Taylor Otwell
Nuno Maduro
Joe Dixon
94
Laravel Breeze vs Laravel Jetstream

Рассмотрены пакеты аутентификации Laravel Breeze и Jetstream. Их различия и сходства, как начать с ними работать и варианты их использования.

https://www.twilio.com/blog/laravel-breeze-vs-laravel-jetstream
29
Релиз Laravel 9.49
https://github.com/laravel/framework/releases/tag/v9.49.0

+релизы:
Cashier Paddle 1.8.1
Cashier Stripe 14.7.1
Dusk 7.5
Horizon 5.14
Passport 11.6
Pint 1.4.1
Sail 1.19
Telescope 4.13
Valet 3.3.1
21
Laravel 9.49: Новые методы в HTTP-клиенте

Определяет, является ли статус ответа уровня 4xx
$response->clientError();

Определяет, является ли статус ответа уровня 5xx
$response->serverError();

Выбросить исключение, если статус ответа имеет определенный код
$response->throwIfStatus(403);

Выбросить исключение, если статус ответа не имеет определенный код
$response->throwUnlessStatus(200);

https://laravel.com/docs/9.x/http-client#error-handling
58
Руководство по обновлению до Laravel 10

Выход новой версии фреймворка запланирован на 7 февраля, но уже сейчас можно начинать подготовку к апгрейду. Мы постарались задокументировать все возможные критические изменения. Поскольку некоторые из них находятся в малоизвестных частях фреймворка, только часть этих изменений может повлиять на ваше приложение. Приблизительное время обновления: 10 минут.

https://laravel.demiart.ru/upgrade-guide-to-laravel-10/
59
Релиз Size Sorter от Andrey Helldar

Пакет для сортировки элементов коллекций (объекты, массивы, строки, модели) по размерам (одежда, обувь, габариты предметов, размер бюстгалтеров и т.д.). Принимаемая коллекция условно разбивается на 5 групп сортировки:
1. Буквенный размер одежды (XXS, XS, M, L и т.д.)
2. Цифровой размер одежды и обуви (9, 10, 44-46, 48 и т.д.)
3. Размер бюстгалтеров (70B, 75A, 80C и т.д.)
4. Размеры предметов (40x38x19 см и т.д.)
5. Все остальные значения, не входящие в первые 4 группы

https://github.com/TheDragonCode/size-sorter
37
Тейлор недоволен использованием слова Laravel другими разработчиками. Просит не называть свои продукты именами типа «Laravel X», лучше назовите «X for Laravel». И напоминает всем, что владеет торговой маркой «Laravel», в подтверждении чего выкатил отдельный раздел с описанием политики её использования — https://laravel.com/trademark

Судя по бурной дискуссии в Твиттере, последней каплей для него было создание какими-то ребятами сайта «Laravel Aura» c аналогичным доменом, разрабатывающими CMS на базе фреймворка. Он запретил им использовать такое название, так как это выглядит, как будто систему разрабатывает компания Тейлора.

Многие разработчики напряглись...
131
18
29
Runtime Comparison для PHP приложений

Очень часто приходится сравнивать время выполнения кода с целью выбора наиболее оптимального решения, и каждый раз для этого приходилось писать обработчик с расчётом microtime, после чего заносил все результаты в какую-нибудь таблицу Excel и вручную рассчитывал минимальное, максимальное и среднее время выполнения... Для решения этой тривиальной задачи был выпущен пакет Runtime Comparison, позволяющий сравнивать время выполнения кода без лишних затрат.

https://habr.com/ru/post/714802/
78