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

Связь: @devmangx
Download Telegram
Разработчики на Laravel, Image API стал ещё лучше в Laravel 13.24.

Теперь доминирующий цвет изображения можно определить с помощью dominantColor().

Также добавлена поддержка HEIC и дополнительных форматов AVIF, что упрощает работу с изображениями с современных устройств.

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
Полезный пакет для Laravel!

MiranSalehi/mksine — основа CMS на Laravel + Filament 5: визуальный page builder, устанавливаемые плагины и темы, хуки, меню, медиабиблиотека, настройки, переводы и отдельная консоль Super Admin.

Это Composer-пакет для создания контентных сайтов и расширяемых админок без необходимости форкать Laravel.
https://github.com/miransalehi/mksine

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

DB::transaction() принимает второй аргумент – сколько раз повторно выполнить весь callback, если база вернула deadlock

Передайте его по имени – attempts: 3, и Laravel попробует выполнить транзакцию до 3 раз вместо того, чтобы сразу завалить запрос

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10👎1
TypePHP вышел в open source раньше запланированного 🎉

Изначально релиз исходников был намечен на октябрь, но проект уже доступен на GitHub. Если тема интересна - стоит заглянуть.

https://github.com/swoole/typephp

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🔥5
Он не из наших

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
😁18❤2
PHP-совет

В числовых литералах можно использовать подчёркивания, чтобы визуально группировать цифры.

Пишите 1_000_000 вместо 1000000 - так значение легче читать и не приходится считать нули.

PHP убирает подчёркивания на этапе компиляции, поэтому само число остаётся точно таким же

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤4
В Laravel 13.30 появился удобный метод для Collection

Использовали chunkWhile(), чтобы просто сгруппировать подряд идущие элементы с одинаковым значением?

Теперь это проще делать через chunkBy().

И в отличие от groupBy(), он сохраняет отдельные чанки, если то же значение встречается снова позже.

Использовали такой паттерн раньше?

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔6❤2
Laravel tip

Нужно получить все записи, кроме последних 5?

skip() сам по себе игнорируется, если после него нет take().

Передайте take(PHP_INT_MAX) — и получите offset без реального ограничения по количеству записей.

Удобно для очистки старой истории.

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

Все исходящие HTTP-ответы можно обрабатывать в одном месте с помощью Http::globalResponseMiddleware().

Этот middleware срабатывает для каждого запроса, который делает HTTP-клиент, независимо от того, где он вызывается в приложении.

Удобно для логирования или сбора метрик - не нужно менять ни один отдельный вызов.

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

sajjadhossainshohag/laravel-lang-cache — ускоряет загрузку переводов в Laravel за счёт кеширования, аналогично конфигурации и маршрутам.

С OPcache загрузка может быть до 1600 раз быстрее.

https://github.com/sajjadhossainshohag/laravel-lang-cache

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
Совет по PHP

file_exists() возвращает true не только для файлов, но и для директорий.

Поэтому, если имя файла пустое, путь указывает на папку, и проверка существования изображения успешно проходит.

Используйте is_file(), когда нужно проверить существование именно файла.

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11
Forwarded from InfoSec Portal
Media is too big
VIEW IN TELEGRAM
Критическая уязвимость в PHP, которая может стать одной из самых серьёзных в истории!

Готовьтесь обновлять свои серверы уже сегодня.

В 17:00 по московскому времени должен выйти срочный патч, устраняющий две крайне опасные уязвимости.

Они потенциально позволяют злоумышленникам удалённо выполнять код на серверах.

Хуже всего то, что проблема затрагивает версии PHP с 5-й по 8-ю.

В сети уже распространяется предполагаемый эксплойт, поэтому не исключено, что патч выпустят раньше запланированного срока.

Если вы используете собственный или арендованный сервер с PHP, WordPress или аналогичными системами, обязательно установите обновление.

Судя по сообщениям, одной из первых временных мер защиты может стать отключение отслеживания прогресса загрузки файлов:

session.upload_progress.enabled = Off


Это позволит частично снизить риск, но не устранит саму уязвимость.

Единственным полноценным решением станет обновление PHP сразу после выхода патча.

👉 @cybersecinform
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👀7
Forwarded from IT Portal
PHP выпустил исправления для двух ранее раскрытых уязвимостей, позволяющих злоумышленникам удалённо выполнять код на серверах без аутентификации.

«Полноценных способов защиты, кроме установки обновлений, не существует. Обновление — единственный безопасный вариант»

, — заявили разработчики PHP.

Необходимо как можно скорее обновиться до PHP 8.5.12, 8.4.27, 8.3.36 или 8.2.35.

По словам разработчиков, наибольшему риску подвержены серверы Apache с модулем mod_php. Уже продемонстрирован эксплойт, позволяющий выполнить атаку ещё до начала выполнения кода приложения.

Для PHP 8.1 и более ранних версий официальные обновления не предусмотрены. Однако разработчики опубликовали исправления исходного кода, адаптированные для PHP 7.4, 8.0 и 8.1.

https://www.php.net/archive/2026.php#2026-10-21-5

@IT_Portal
❤8
Gemini Pro Argon на 1.5 года по цене кофе?

Gemini Pro на 18 месяцев можно купить за 6$ (480₽ вместо 30.000₽) - последние 2 дня акции от Jio!

> 4.0 Argon топ для вайбкодеров
> Nano Banana 2 PRO (картинки)
> Видео генерация (видео, нарезки, мувики)
> 5 ТБ облака в Google One

🔓Вот бесплатный VPN для работы Gemini и AI

Работает акция еще 2 дня по такой цене, дальше будет официальная цена $360 за 18 месяцев


Приобрести можно в Магазине с 20.000+ покупок и 2000+ отзывов (есть возвраты и замены).
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по Laravel.

Данные, добавленные через Context::add(), передаются вместе с запросом ПОВСЮДУ.

Они автоматически добавляются к каждой записи в логах и передаются во все задачи, отправляемые в очередь.

Достаточно один раз задать ID тенанта в middleware, а затем получить его внутри задачи.

👉 @PHPgx
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔3❤2