TypePHP вышел в open source раньше запланированного 🎉
Изначально релиз исходников был намечен на октябрь, но проект уже доступен на GitHub. Если тема интересна - стоит заглянуть.
https://github.com/swoole/typephp
👉 @PHPgx
Изначально релиз исходников был намечен на октябрь, но проект уже доступен на GitHub. Если тема интересна - стоит заглянуть.
https://github.com/swoole/typephp
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🔥5
PHP-совет
В числовых литералах можно использовать подчёркивания, чтобы визуально группировать цифры.
Пишите
PHP убирает подчёркивания на этапе компиляции, поэтому само число остаётся точно таким же
👉 @PHPgx
В числовых литералах можно использовать подчёркивания, чтобы визуально группировать цифры.
Пишите
1_000_000 вместо 1000000 - так значение легче читать и не приходится считать нули.PHP убирает подчёркивания на этапе компиляции, поэтому само число остаётся точно таким же
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤4
В Laravel 13.30 появился удобный метод для Collection
Использовали
Теперь это проще делать через
И в отличие от
Использовали такой паттерн раньше?
👉 @PHPgx
Использовали
chunkWhile(), чтобы просто сгруппировать подряд идущие элементы с одинаковым значением?Теперь это проще делать через
chunkBy().И в отличие от
groupBy(), он сохраняет отдельные чанки, если то же значение встречается снова позже.Использовали такой паттерн раньше?
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔6❤2
Laravel tip
Нужно получить все записи, кроме последних 5?
Передайте
Удобно для очистки старой истории.
👉 @PHPgx
Нужно получить все записи, кроме последних 5?
skip() сам по себе игнорируется, если после него нет take().Передайте
take(PHP_INT_MAX) — и получите offset без реального ограничения по количеству записей.Удобно для очистки старой истории.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8
Совет по Laravel
Все исходящие HTTP-ответы можно обрабатывать в одном месте с помощью
Этот middleware срабатывает для каждого запроса, который делает HTTP-клиент, независимо от того, где он вызывается в приложении.
Удобно для логирования или сбора метрик - не нужно менять ни один отдельный вызов.
👉 @PHPgx
Все исходящие HTTP-ответы можно обрабатывать в одном месте с помощью
Http::globalResponseMiddleware().Этот middleware срабатывает для каждого запроса, который делает HTTP-клиент, независимо от того, где он вызывается в приложении.
Удобно для логирования или сбора метрик - не нужно менять ни один отдельный вызов.
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
sajjadhossainshohag/laravel-lang-cache — ускоряет загрузку переводов в Laravel за счёт кеширования, аналогично конфигурации и маршрутам.
С OPcache загрузка может быть до 1600 раз быстрее.
https://github.com/sajjadhossainshohag/laravel-lang-cache
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
Совет по PHP
Поэтому, если имя файла пустое, путь указывает на папку, и проверка существования изображения успешно проходит.
Используйте
👉 @PHPgx
file_exists() возвращает true не только для файлов, но и для директорий.Поэтому, если имя файла пустое, путь указывает на папку, и проверка существования изображения успешно проходит.
Используйте
is_file(), когда нужно проверить существование именно файла.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 или аналогичными системами, обязательно установите обновление.
Судя по сообщениям, одной из первых временных мер защиты может стать отключение отслеживания прогресса загрузки файлов:
Это позволит частично снизить риск, но не устранит саму уязвимость.
Единственным полноценным решением станет обновление PHP сразу после выхода патча.
👉 @cybersecinform
Готовьтесь обновлять свои серверы уже сегодня.
В 17:00 по московскому времени должен выйти срочный патч, устраняющий две крайне опасные уязвимости.
Они потенциально позволяют злоумышленникам удалённо выполнять код на серверах.
Хуже всего то, что проблема затрагивает версии PHP с 5-й по 8-ю.
В сети уже распространяется предполагаемый эксплойт, поэтому не исключено, что патч выпустят раньше запланированного срока.
Если вы используете собственный или арендованный сервер с PHP, WordPress или аналогичными системами, обязательно установите обновление.
Судя по сообщениям, одной из первых временных мер защиты может стать отключение отслеживания прогресса загрузки файлов:
session.upload_progress.enabled = Off
Это позволит частично снизить риск, но не устранит саму уязвимость.
Единственным полноценным решением станет обновление PHP сразу после выхода патча.
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
«Полноценных способов защиты, кроме установки обновлений, не существует. Обновление — единственный безопасный вариант»
, — заявили разработчики 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
Совет по Laravel.
Данные, добавленные через
Они автоматически добавляются к каждой записи в логах и передаются во все задачи, отправляемые в очередь.
Достаточно один раз задать ID тенанта в middleware, а затем получить его внутри задачи.
👉 @PHPgx
Данные, добавленные через
Context::add(), передаются вместе с запросом ПОВСЮДУ.Они автоматически добавляются к каждой записи в логах и передаются во все задачи, отправляемые в очередь.
Достаточно один раз задать ID тенанта в middleware, а затем получить его внутри задачи.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔3❤2