TGViewer
Channel Public Channel
PHP Portal | Программирование

PHP Portal | Программирование

@phpgx

Присоединяйтесь к нашему каналу и погрузитесь в мир для PHP-разработчика

Связь: @devmangx
Subscribers
4.64K
Photos
426
Videos
20
Links
212

Showing posts older than #458 · Back to latest

Older Posts 18 shown
Post #457 2.86K
Новое в Laravel 12.21 на этой неделе:

Теперь при запуске php artisan db:seed будет отображаться время выполнения.

Ранее Laravel показывал это только при запуске с указанием конкретного сидера через --class=SomeSeeder.

Ссылка на PR:
https://github.com/laravel/framework/pull/56310

👉 @PHPgx
  • 👍 11
  • ❤ 3
  • 🔥 2
  • 🌚 1
Post #453 2.96K
Как заставить ИИ писать код по стилю

Нашёл оптимизированные для ИИ гайдлайны, специально отформатированные для Claude Code и аналогичных инструментов. Это позволяет генерировать код в соответствии со стандартами Laravel и PHP от Spatie.

Файл с гайдлайнами, адаптированными под ИИ, можно посмотреть здесь: https://spatie.be/guidelines/ai

👉 @PHPgx
  • 👍 4
  • ❤ 2
Post #452 3.15K
Нужно выполнить поиск по нескольким столбцам с одним и тем же условием?

Используй методы whereAny(), whereAll() или whereNone() вместо написания множества условий с OR или AND. Код станет гораздо чище и понятнее!

Документация: https://laravel.com/docs/12.x/queries#where-any-all-none-clauses

👉 @PHPgx
  • 👍 21
  • ❤ 6
Post #450 2.97K
Теперь вы можете запускать Laravel-приложения напрямую внутри Node.js.

Платформа Platformatic анонсировала решение, которое объединяет PHP и JavaScript в едином рантайме. Это открывает новые горизонты для full-stack разработки и избавляет от необходимости поддерживать раздельные инфраструктуры для PHP и Node.js.

Новое решение под названием Platformatic PHP stackable позволяет запускать Laravel-приложения внутри Node.js-рантайма Watt. Ключевым компонентом является @platformatic/php-node — нативный модуль на Rust, который внедряет многопоточный PHP-интерпретатор прямо в Node.js

Это создает высокопроизводительный мост, позволяя вашему Laravel-приложению запускаться как stackable-модуль внутри Watt. Это снижает задержки и даёт массу преимуществ:

✅ Единый деплой: PHP и Node.js-сервисы работают в одном рантайме.
✅ Общие ресурсы: Оптимизация использования ресурсов и снижение затрат на инфраструктуру.
✅ Плавная миграция: Постепенный перенос легаси-приложений на JavaScript.
✅ Polyglot-архитектура: Используйте PHP и JS вместе в микросервисной архитектуре.

Начать просто — всего пара шагов по конфигурации, и ваше существующее Laravel-приложение будет работать в окружении Node.js.

В блоге Platformatic уже опубликовано подробное руководство по запуску

Репозиторий на GitHub:
https://github.com/platformatic/watt-next-laravel

👉 @PHPgx
  • ❤ 5
  • 🤔 3
  • 👎 2
Post #448 2.71K
Вот как нужно писать на PHP

Инструменты для современного PHP сейчас реально на хорошем уровне. А значит, писать на PHP можно куда лучше, чем ты, возможно, думаешь.

Вдохновившись докладом Нуно Мадуро про современные PHP-инструменты, автор занялся обновлением своего стартового набора Fission, чтобы убедиться, что использует всё самое актуальное из того, что предлагает PHP для разработки.

И это полностью изменило его подход к написанию кода на PHP. Он нашёл идеальный стек инструментов.

https://www.youtube.com/watch?v=qkG2ybcmpZc

👉 @PHPgx
  • 👍 7
  • ❤ 5
Post #447 2.86K
Храни уведомления в базе данных, чтобы построить систему in-app уведомлений.

Добавь 'database' в метод via(), и Laravel автоматически сохранит данные уведомления в формате JSON.

Документация: https://laravel.com/docs/12.x/notifications#database-notifications

👉 @PHPgx
  • ❤ 8
  • 👍 3
Post #444 2.86K
PHP-разработчики, пишущие на JavaScript, после того как у них челюсть отвисает от того, что аналогичный функционал не идет из коробки в JS. 🤣

👉 @PHPgx
  • 😁 10
  • 👍 4
  • ❤ 2
Post #443 3.94K
Как использовать сервисные классы в контроллере Laravel?

А точнее — где их определять или внедрять?

Моё правило:

🔹Если сервис используется в одном методе контроллера — внедрение в метод

🔹Если в нескольких методах — внедрение через конструктор с использованием property promotion

👉 @PHPgx
  • 👍 9
  • ❤ 7
Post #437 3.46K
Очередной годный сайт для прокачки навыков SQL-запросов

На платформе вам предстоит решать задачи, используя базу данных больницы. Задачи разделены по уровням сложности, начиная с простых запросов с SELECT и постепенно переходя к более сложным

Есть подсказки и возможность получить готовый запрос, если застряли 👍

👉 @PHPgx
  • 👍 11
  • ❤ 7
  • 🔥 1
  • 🎉 1
Post #436 3.69K
Совет по PHP

Вы можете проверять файлы на синтаксические ошибки без запуска кода — и валидировать весь проект одной командой.

🔹 Быстрая проверка на ошибки
🔹 Валидация проекта в одну строку

Чище код — быстрее разработка

👉 @PHPgx
  • 👍 15
  • ❤ 9
Post #435 3.82K
Совет по Laravel

Делаешь несколько API-запросов? Не отправляй их по очереди!

Вместо этого используй Http::pool() — он позволяет запускать запросы параллельно и прокачать производительность, выполнив их все одновременно.

Ссылка на документацию: https://laravel.com/docs/12.x/http-client#concurrent-requests

👉 @PHPgx
  • ❤ 17
  • 👍 13
  • 🔥 6
Post #433 3.24K
Удобный шпаргалка с самыми полезными константами языка PHP

От DIR до UPLOAD_ERR_NO_FILE — всё аккуратно сгруппировано и готово к версии 8.4

Сохраняйте. Используйте. Делитесь

👉 @PHPgx
  • 👍 13
  • ❤ 4
  • 🤔 2
  • 🔥 1
Post #432 2.93K
strlen() vs mb_strlen(): Почему 71% PHP-разработчиков ошибаются

В этой статье разберем, как PHP работает со строками и почему даже простой вызов strlen() может привести к неожиданным результатам.

На примере крайне простой задачи "что выведет echo strlen('привет!');" посмотрим, что и как влияет на подсчет длины строки, заглянем внутрь реализации strlen() и развенчаем миф о строках как массивах.

https://habr.com/ru/articles/919192/

👉 @PHPgx
  • 👍 18
  • ❤ 3
Post #430 2.52K
Совет по Laravel: хватит писать кастомную логику повторных попыток для нестабильных API

Используйте Http::retry() — он автоматически повторяет неудачные запросы с экспоненциальной задержкой между попытками.

Ссылка на документацию: https://laravel.com/docs/12.x/http-client#retries

👉 @PHPgx
  • 👍 19
  • ❤ 5
  • 🔥 1
Post #429 2.98K
Это не задокументировано, но в Laravel можно подписаться на событие MessageSending и предотвратить отправку письма, если выполняется определённое условие.

Это очень полезно, если нужно реализовать блоклист — например, чтобы не отправлять письма на адреса, которые ранее дали bounce в SES, и таким образом сохранить репутацию отправителя.

Можно изменить email «на лету» и убрать из него адреса, попавшие в блоклист. Если после этого не остаётся ни одного адреса для отправки, достаточно вернуть false — письмо будет тихо отброшено и не уйдёт

👉 @PHPgx
  • ❤ 11
  • 👍 7
Post #428 3.68K
Нашел для вас шпаргалку, чтобы не путались

👉 @PHPgx
  • 😁 39
  • ❤ 3
Post #426 3.18K
Разработчики на PHP, вы знали о Ticks в PHP?

Вы можете написать небольшой скрипт, чтобы остановить долго выполняющийся код по тайм-ауту — без использования pcntl!

Подходит не везде, но отлично заходит в циклах, плагинах или в песочнице.

https://gist.github.com/MrPunyapal/b3909ab20872bd8e1d39bcaf03f52351

👉 @PHPgx
  • ❤ 7
  • 👍 5
Post #424 2.68K
Прекрати использовать массивы PHP для обработки данных

Создавай свои DTO — классы со свойствами

или используй spatie/laravel-data

Также не забудь про неизменяемость. Убедись, что твои DTO являются immutable (записываются один раз), чтобы можно было быть уверенным, что объект не был где-либо изменён.

Ключевое слово readonly тебе в этом поможет

👉 @PHPgx
  • ❤ 13
  • 👍 6
  • 😁 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →