PHP Portal | Программирование
4.9K subscribers
403 photos
20 videos
2 files
206 links
Присоединяйтесь к нашему каналу и погрузитесь в мир для PHP-разработчика

Связь: @devmangx
Download Telegram
Совет по filamentphp

В таблице можно добавить кастомное действие Replicate / Duplicate.

В этом экшене вы можете:
- использовать метод Eloquent ->replicate() для создания копии записи
- затем изменить нужные поля и вызвать ->save()
- скопировать связанные изображения, если вы используете пакет Spatie Media Library

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍54
Boost 2.0 уже вышел ⚡️

В этом обновлении многие гайдлайны пакетов перенесены в agent skills для более корректного управления контекстом.

Это маст-хев, если хочешь получать лучшие результаты от агентов при разработке Laravel-приложений.

composer update
php artisan boost:install


https://github.com/laravel/boost/releases/tag/v2.0.0

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
9🌚1
NativePHP for Mobile теперь бесплатный!

Вот официальное объявление со всеми подробностями.
https://nativephp.com/blog/nativephp-for-mobile-is-now-free

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
👍102🤔1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63
Совет по Laravel

Метод updateQuietly() позволяет изменять модели «тихо», без триггера EVENTS.

Идеально подходит для cron-задач, импортов или случаев, когда нужно обновить связанные данные без каскадных уведомлений и запуска тяжёлых observers

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍1
Новый инструмент для Laravel!
(но написан на Go)

Eljakani/ward — security-сканер для Laravel-проектов. Выявляет ошибки конфигурации, уязвимости и утёкшие секреты. Оснащён удобным TUI-интерфейсом.

https://github.com/Eljakani/ward

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Новое в v1.6.0 официального Laravel-расширения для VS Code:

Интеграция со встроенным test runner в VS Code!

Теперь тесты отображаются в боковой панели Test Explorer, и запускать их можно прямо из Command Palette. Работает и с Pest, и с PHPUnit 👍

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥4
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43
Совет по Laravel

Работаешь с мультиязычным проектом и хочешь проверить, что нигде не пропущены переводы?

Я видел для этого отдельные пакеты, но на самом деле всё можно сделать прямо в тесте на Pest.

Вот метод теста, который мне подсказал Claude Code. Довольно умно, да?

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9👎5🔥1🌚1
PHP позволяет вам придумывать собственные протоколы. И почему-то все об этом забывают!

Любой вызов fopen(), fread() или file_get_contents() может работать с ВАШИМ протоколом.

db://, s3://, config:// — да вообще с чем угодно.

fopen() — это не только про файлы. И никогда не было только про них.

Знали об этом? Штука довольно продвинутая 👀

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
15👍14🔥1
php://memory — это поток, который существует в оперативной памяти (RAM).

php://temp сначала работает в RAM, но после 2 МБ (настраивается) начинает скидывать данные на диск.

Никакого tmpfile(). Никакой временной директории. Никакой очистки.

Отлично подходит для сборки файлов в памяти перед отправкой в PHP.

А ты знал про трюк с maxmemory:?

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
17🤔2🔥1
Совет по Laravel для пользователей Boost

После установки стороннего пакета снова запустите команду php artisan boost:install, чтобы проверить, не опубликовал ли этот пакет свои guidelines/skills для Boost.

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
5
Новый пакет для Laravel!

sarderiftekhar/pdf-studio: проектируйте, предпросматривайте и генерируйте PDF с использованием HTML и TailwindCSS в Laravel
https://github.com/sarderiftekhar/pdf-studio

На странице сравнения утверждается, что у пакета больше возможностей, чем у spatie/laravel-pdf и других альтернатив:
https://sarderiftekhar.github.io/pdf-studio/compare.html

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍5
Зарелизили новый Boost-скилл: laravel-best-practices

Он прокачивает твоего AI-агента более чем 100 отобранными best practices для Laravel — включая Eloquent, кэширование, очереди, аутентификацию и многое другое. Так что он генерит код не просто корректный, а идиоматичный (в духе Laravel).

$ composer update
$ php artisan boost:install


👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Знаете ли вы, что можно использовать Model::booted(), чтобы выбрасывать ValidationException и блокировать опасные сохранения?

Например, можно предотвратить ситуацию, когда администратор отключает свой собственный аккаунт или удаляет последнего активного администратора — прямо на уровне модели, а не только через формы.

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
5
Команда внутренних разработчиков PHP проголосовала 38-4 за депрекацию всех объектно-ориентированных конструкций в PHP 9.0.

Причина: LLM допускают на 34% меньше ошибок в процедурных кодовых базах. Принципы SOLID вызывают перегрузку контекста у 78% протестированных моделей. __construct() — основной источник галлюцинаций LLM в PHP.

laravel и symfony оценивают влияние на свои роадмапы. WordPress уже совместим.

Как вы готовите свою кодовую базу?

Правда, всё это оказалось первоапрельской шуткой 😁

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
😁264👀2👎1
Недооценённая фича Laravel

URI-шаблоны в HTTP-клиенте незаслуженно игнорируются. Хватит конкатенировать строки, как будто на дворе 2012-й.

Чисто. Читаемо. Никаких багов, прячущихся в строковой лапше.

Маленькая фича - большой апгрейд. 🔥

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
👍102🌚1
Pest v4.5 вышел

Теперь можно помечать тесты как flaky — Pest будет автоматически перезапускать их перед тем, как зафиксировать падение

Также можно использовать флаг --flaky, чтобы запускать только flaky-тесты.

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
4
Начиная с Laravel 13.4.0, вы можете использовать FormRequest::failOnUnknownFields, чтобы включить выброс ошибок в случае, если в запросе передаются неизвестные поля!

Как думаете, вы бы использовали это в своих проектах?

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
8🌚6