PHP Foundation Update, July 2022
Вышел ежемесячный отчёт PHP Foundation для спонсоров
https://thephp.foundation/blog/2022/08/04/php-foundation-update-july-2022/
Вышел ежемесячный отчёт PHP Foundation для спонсоров
https://thephp.foundation/blog/2022/08/04/php-foundation-update-july-2022/
Forwarded from Пых (Валентин Удальцов)
🏫 Мой продвинутый курс по PHP
Я уже пару лет мечтаю о том, чтобы масштабно и комплексно поделиться знаниями, и наконец-то мне представилась возможность записать свой продвинутый курс по PHP! Огромное спасибо Loftschool за предложение посотрудничать!
Осенью мы начнём работу над курсом, а пока приглашаю вас посмотреть мастер-класс про паттерн middleware, который я записал в качестве пролога.
https://youtu.be/yMrbatAM3bw
Я уже пару лет мечтаю о том, чтобы масштабно и комплексно поделиться знаниями, и наконец-то мне представилась возможность записать свой продвинутый курс по PHP! Огромное спасибо Loftschool за предложение посотрудничать!
Осенью мы начнём работу над курсом, а пока приглашаю вас посмотреть мастер-класс про паттерн middleware, который я записал в качестве пролога.
https://youtu.be/yMrbatAM3bw
YouTube
Готовим Middleware в PHP
В этом мастер-классе Валентин Удальцов расскажет о middleware как об архитектурном шаблоне и ООП-паттерне в контексте PHP. Вы узнаете, как выглядит контракт middleware, как построить пайплайн для запуска цепочки обработчиков, какие преимущества имеет middleware…
Разработка Yii3, 29 июля — 4 августа
⚡️Обновления
Yii Debug, Yii Debug API, Yii Debug Viewer
• Добавлена возможность исключать консольные команды из отслеживания.
• Реализован сбор информации об очередях.
• Реализована базовая версия инспектора приложения. Сейчас инспектор позволяет посмотреть конфигурации объектов контейнера и параметры конфигурации приложения, но в дальнейшем планируется расширить его возможности (просмотр дампа любого объекта из контейнера, просмотр конфигурации окружений, запуск консольных утилит psalm, phpunit, deptrac и т. д.)
Yii Cycle ORM
• Ветка с поддержкой Cycle ORM 2 стала основной.
• Добавлена поддержка
• Добавлен генератор, обрабатывающий наследование таблиц.
Демо веб-приложения
• В
• Улучшен вывод консольной команды
Демо API-приложения
• Добавлен дебаггер.
✨ Новые пакеты
yiisoft/app-console — шаблон для консольного приложения.
🎁 Релизы
Yii Console 1.3.0
• Событие запуска приложения теперь может содержать имя запускаемой консольной команды.
Yii Console Runner 1.1.0
• Реализована передача имени запускаемой команды в событие запуска приложения.
Yii Runner 1.2.0
• Объект с конфигурацией контейнера добавлен в сам контейнер. Это потребовалось для реализации инспектора в дебаггере.
Yii Swagger 1.2.2
• Добавлена поддержка
Сводка подготовлена по информации канала «Хроники Yii3».
⚡️Обновления
Yii Debug, Yii Debug API, Yii Debug Viewer
• Добавлена возможность исключать консольные команды из отслеживания.
• Реализован сбор информации об очередях.
• Реализована базовая версия инспектора приложения. Сейчас инспектор позволяет посмотреть конфигурации объектов контейнера и параметры конфигурации приложения, но в дальнейшем планируется расширить его возможности (просмотр дампа любого объекта из контейнера, просмотр конфигурации окружений, запуск консольных утилит psalm, phpunit, deptrac и т. д.)
Yii Cycle ORM
• Ветка с поддержкой Cycle ORM 2 стала основной.
• Добавлена поддержка
psr/simple-cache
версий ^2.0
и ^3.0
.• Добавлен генератор, обрабатывающий наследование таблиц.
Демо веб-приложения
• В
LocaleMiddleware
добавлена поддержка HTTP (ранее корректно работало только с HTTPS).• Улучшен вывод консольной команды
router/list
.Демо API-приложения
• Добавлен дебаггер.
✨ Новые пакеты
yiisoft/app-console — шаблон для консольного приложения.
🎁 Релизы
Yii Console 1.3.0
• Событие запуска приложения теперь может содержать имя запускаемой консольной команды.
Yii Console Runner 1.1.0
• Реализована передача имени запускаемой команды в событие запуска приложения.
Yii Runner 1.2.0
• Объект с конфигурацией контейнера добавлен в сам контейнер. Это потребовалось для реализации инспектора в дебаггере.
Yii Swagger 1.2.2
• Добавлена поддержка
yiisoft/cache
версии ^2.0
.Сводка подготовлена по информации канала «Хроники Yii3».
PHP Annotated – Август 2022
Вышел августовский выпуск PHP Annotated от JetBrains с самыми интересными событиями, произошедшими в мире PHP за последний месяц.
https://blog.jetbrains.com/phpstorm/2022/08/php-annotated-august-2022/
Вышел августовский выпуск PHP Annotated от JetBrains с самыми интересными событиями, произошедшими в мире PHP за последний месяц.
https://blog.jetbrains.com/phpstorm/2022/08/php-annotated-august-2022/
PHP Дайджест в видео формате
Одна из самых популярных рубрик канала CutCode с дайджестом PHP и Laravel возвращается 🎉
🎬 https://youtu.be/XZOBB5Dysc4
Одна из самых популярных рубрик канала CutCode с дайджестом PHP и Laravel возвращается 🎉
🎬 https://youtu.be/XZOBB5Dysc4
YouTube
PHP и Laravel дайджест новостей за август 2022 года. Обзор новостей по ПХП и Ларавел
Одна из самых популярных рубрик канала с дайджестом в формате PHP + Laravel возвращается! Как и раньше посмотрим что интересного произошло за август в мире PHP, и что новенького придумал Тейлор Отвел.
Дайджест PHP будет освящать Сергей Пантелеев.
http…
Дайджест PHP будет освящать Сергей Пантелеев.
http…
Дайджест PHP – Сентябрь 2022
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышел PHP 8.2 RC 3
Очередная версия RC была выпущена по расписанию. RC4 – ожидается 13 октября.
Подробно про все изменения в PHP 8.2 можно прочитать на сайтах PHP.Watch или stitcher.io.
🔹 Вышли PHP 7.4.32, PHP 8.0.24 и PHP 8.1.11
❗️Это выпуски с исправлением проблем безопасности. Всем пользователям рекомендуется обновиться.
🔹 Доступен PhpStorm 2022.3 EAP!
Вот что вы уже можете попробовать в рамках программы раннего доступа PhpStorm:
- Новой интерфейс (пока в бета-режиме, но доступен всем по опции в настройках)
- Полная поддержка PHP 8.2
- Предварительный просмотр быстрых исправлений
- И многое другое
🐘 ЯДРО PHP
Большинство новостей ядра подробно освещаются в серии PHP Core Roundup от PHP Foundation, поэтому лишь кратко пробежимся:
📊 RFC: json_validate #PHP 8.3
В этом RFC Juan Carlos Morales предлагает добавить новую функцию
🤔 RFC: Improve unserialize() error handling #PHP 8.3
Tim Düsterhus предлагает бросать исключение
🤔 RFC: StreamWrapper Support for glob() #PHP 8.3
Timmy Almroth предлагает реализовать в
🔹RFC: Deprecations for PHP 8.3
RFC со списком того, что предлагается объявить устаревшими в PHP 8.3 и удалить в PHP 9.
🛠 ИНСТРУМЕНТЫ
🔹play.phpsandbox.io – Попробуйте пакеты Composer прямо в браузере, ничего не устанавливая.
🔹cspray/annotated-container – Dependency Injection framework для конфигурирования контейнера PSR-11 с атрибутами.
🔹openai-php/client – Клиент для API OpenAI.
Существует также orhanerday/open-ai, если вам нужна альтернатива для доступа к API OpenAI GPT-3.
⚫️ SYMFONY
🔹Вышел symfony/webpack-encore 4.0.0. Некоторые зависимости (например, webpack) были перенесены из Encore в проект.
🔹StenopePHP/Stenope – Инструмент создания статических веб-сайтов для Symfony. Вы можете создать полноценное приложение Symfony, а затем развернуть его в виде статической страницы в любом удобном для вас месте.
🔴 LARAVEL
🔹ksassnowski/venture 4.0.0 – Пакет для создания и управления сложными асинхронными рабочими процессами в приложениях Laravel.
🔹spatie/laravel-model-info – Пакет для получения информации обо всех моделях.
🔹YorCreative/Laravel-Scrubber – Пакет для очистки конфиденциальной информации, нарушающей политики операционной безопасности, от случайной или неслучайной утечки разработчиками. Подробнее об использовании.
👨🏫 Laracon Online – Видеозаписи всех докладов с онлайн конференции по Laravel.
Тейлор представил Laravel Bootcamp – новый обучающий сайт по Laravel.
🟢 ДРУГИЕ ФРЕЙМВОРКИ
🔹Вышел spiral/framework 3.0.0 – Большое обновление фреймворка от создателей RoadRunner.
🔹Вышел Phalcon PHP Framework 5.0 – Подробный список нововведений приведён в документации.
🔹Вышел api-platform/api-platform 3.0 – Фреймворк построен поверх Symfony и позволяет создавать REST и GraphQL API и многое другое.
🔹Appwrite 1.0 – Крупный стабильный выпуск решения с открытым исходным кодом backend-as-a-service.
🔹Вышли обновления пакетов Yii Strings 2.1.0, Yii Middleware Dispatcher 3.0.0, Yii Profiler 2.0.0, Yii Message Translator 1.1.1, Yii Cache File Handler 2.0.1.
Более подробно новости Yii освещаются в канале «Хроники Yii3».
📄 СТАТЬИ
🔹Как мы решаем проблемы со склонением слов для задач seo-оптимизации с помощью phpMorphy от Александра Корабельникова.
🔹PHP: атрибуты vs аннотации: оптимизируем метадату Doctrine от Романа Ушакова.
🔹Выходя за рамки ООП. Разработка расширений для PHP на PHP от Александра Макарова.
—
Ещё больше новостей и ссылок в сентябрьском выпуске PHP Annotated от JetBrains 💜
🎬 Дайджест PHP в видео-формате на канале CutCode
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышел PHP 8.2 RC 3
Очередная версия RC была выпущена по расписанию. RC4 – ожидается 13 октября.
Подробно про все изменения в PHP 8.2 можно прочитать на сайтах PHP.Watch или stitcher.io.
🔹 Вышли PHP 7.4.32, PHP 8.0.24 и PHP 8.1.11
❗️Это выпуски с исправлением проблем безопасности. Всем пользователям рекомендуется обновиться.
🔹 Доступен PhpStorm 2022.3 EAP!
Вот что вы уже можете попробовать в рамках программы раннего доступа PhpStorm:
- Новой интерфейс (пока в бета-режиме, но доступен всем по опции в настройках)
- Полная поддержка PHP 8.2
- Предварительный просмотр быстрых исправлений
- И многое другое
🐘 ЯДРО PHP
Большинство новостей ядра подробно освещаются в серии PHP Core Roundup от PHP Foundation, поэтому лишь кратко пробежимся:
📊 RFC: json_validate #PHP 8.3
В этом RFC Juan Carlos Morales предлагает добавить новую функцию
json_validate()
, которая проверяет, является ли строка корректным JSON.🤔 RFC: Improve unserialize() error handling #PHP 8.3
Tim Düsterhus предлагает бросать исключение
UnserializationFailedException
в случае ошибки сериализации.🤔 RFC: StreamWrapper Support for glob() #PHP 8.3
Timmy Almroth предлагает реализовать в
StreamWrappers
поддержку функции glob()
.🔹RFC: Deprecations for PHP 8.3
RFC со списком того, что предлагается объявить устаревшими в PHP 8.3 и удалить в PHP 9.
🛠 ИНСТРУМЕНТЫ
🔹play.phpsandbox.io – Попробуйте пакеты Composer прямо в браузере, ничего не устанавливая.
🔹cspray/annotated-container – Dependency Injection framework для конфигурирования контейнера PSR-11 с атрибутами.
🔹openai-php/client – Клиент для API OpenAI.
Существует также orhanerday/open-ai, если вам нужна альтернатива для доступа к API OpenAI GPT-3.
⚫️ SYMFONY
🔹Вышел symfony/webpack-encore 4.0.0. Некоторые зависимости (например, webpack) были перенесены из Encore в проект.
🔹StenopePHP/Stenope – Инструмент создания статических веб-сайтов для Symfony. Вы можете создать полноценное приложение Symfony, а затем развернуть его в виде статической страницы в любом удобном для вас месте.
🔴 LARAVEL
🔹ksassnowski/venture 4.0.0 – Пакет для создания и управления сложными асинхронными рабочими процессами в приложениях Laravel.
🔹spatie/laravel-model-info – Пакет для получения информации обо всех моделях.
🔹YorCreative/Laravel-Scrubber – Пакет для очистки конфиденциальной информации, нарушающей политики операционной безопасности, от случайной или неслучайной утечки разработчиками. Подробнее об использовании.
👨🏫 Laracon Online – Видеозаписи всех докладов с онлайн конференции по Laravel.
Тейлор представил Laravel Bootcamp – новый обучающий сайт по Laravel.
🟢 ДРУГИЕ ФРЕЙМВОРКИ
🔹Вышел spiral/framework 3.0.0 – Большое обновление фреймворка от создателей RoadRunner.
🔹Вышел Phalcon PHP Framework 5.0 – Подробный список нововведений приведён в документации.
🔹Вышел api-platform/api-platform 3.0 – Фреймворк построен поверх Symfony и позволяет создавать REST и GraphQL API и многое другое.
🔹Appwrite 1.0 – Крупный стабильный выпуск решения с открытым исходным кодом backend-as-a-service.
🔹Вышли обновления пакетов Yii Strings 2.1.0, Yii Middleware Dispatcher 3.0.0, Yii Profiler 2.0.0, Yii Message Translator 1.1.1, Yii Cache File Handler 2.0.1.
Более подробно новости Yii освещаются в канале «Хроники Yii3».
📄 СТАТЬИ
🔹Как мы решаем проблемы со склонением слов для задач seo-оптимизации с помощью phpMorphy от Александра Корабельникова.
🔹PHP: атрибуты vs аннотации: оптимизируем метадату Doctrine от Романа Ушакова.
🔹Выходя за рамки ООП. Разработка расширений для PHP на PHP от Александра Макарова.
—
Ещё больше новостей и ссылок в сентябрьском выпуске PHP Annotated от JetBrains 💜
🎬 Дайджест PHP в видео-формате на канале CutCode
Дайджест PHP – Сентябрь 2022 в видео формате уже доступен на канале CutCode
Продолжаем освещать новости PHP + Laravel на ютубе.
🎬 https://youtu.be/J-pDcX9NDFo
Продолжаем освещать новости PHP + Laravel на ютубе.
🎬 https://youtu.be/J-pDcX9NDFo
YouTube
PHP и Laravel дайджест новостей за сентябрь 2022 года. Обзор новостей по ПХП и Ларавел
Продолжаем освящать новости PHP + Laravel и этот ролик посвящен дайджесту за сентябрь! О событиях из мира PHP расскажет Сергей Пантелеев - https://github.com/saundefined. А во второй половине дайджеста я расскажу что нового в апдейтах Laravel.
Курс интернет…
Курс интернет…
Forwarded from Пых (Валентин Удальцов)
#[<T>] Дженерики через атрибуты
Роман Пронский в своём блоге предлагает реализовать стираемые дженерики путём расширения синтаксиса атрибутов.
Ход мысли такой. Сейчас мы описываем общие типы для Psalm и PHPStan в phpdoc-ах, то есть, по сути, и используем стираемые дженерики, только с не особо стандартизованным синтаксисом и в комментариях, КАРЛ. А ещё у нас есть атрибуты — синтаксис в PHP, предназначенный для метаинформации. Так почему бы нам не объединить две эти вещи? Так как атрибуты в текущем виде слабо подходят для типизации, Рома предлагает расширить их синтаксис, в частности, разрешить ставить атрибуты над выражениями и перед типом возвращаемого значения.
https://pronskiy.com/blog/generics-via-attributes-in-php/
Я считаю, что это интересный альтернативный взгляд на дженерики в PHP, но с ним связано несколько проблем:
1. Нарушение принципа единой отвественности для атрибутов. Мы либо получим неоднозначность в определении понятия "атрибут", либо просто дженерики с похожим синтаксисом.
2. Инстанциированные атрибуты можно получить только через рефлексию. Рефлексия — это рантайм и автолоадинг. Статанализ же в идеале вообще не должен запускать анализируемый код. Именно поэтому появились такие проекты, как PHP Parser и Better Reflection. Если же обновлённые атрибуты будут использоваться только как синтаксис, то нет смысла их называть атрибутами.
3. Приведенную в статье декларацию атрибута-дженерика над выражением вообще не получится отрефлексировать, поскольку для выражений по определению невозможна рефлексия. Из-за этого синтаксис дженериков может быть реализован только на уровне языка.
Получается, что замаскированные под атрибуты дженерики технически не смогут ими быть. Ну а в таком случае проще реализовать стираемые дженерики с привычным синтаксисом
Что касается самой концепции стираемых дженериков, я её однозначно поддерживаю. Да, такой подход требует наличия внешнего анализатора, но взамен даёт стандартизированный синтаксис, нативный парсинг кода с дженериками и популяризацию обобщённого программирования среди PHP-разработчиков.
Я очень рад, что Рома в очередной раз подогрел дискуссию вокруг дженериков. Любой подобный движ полезен для сообщества и приближает нас к результату.
Роман Пронский в своём блоге предлагает реализовать стираемые дженерики путём расширения синтаксиса атрибутов.
Ход мысли такой. Сейчас мы описываем общие типы для Psalm и PHPStan в phpdoc-ах, то есть, по сути, и используем стираемые дженерики, только с не особо стандартизованным синтаксисом и в комментариях
https://pronskiy.com/blog/generics-via-attributes-in-php/
Я считаю, что это интересный альтернативный взгляд на дженерики в PHP, но с ним связано несколько проблем:
1. Нарушение принципа единой отвественности для атрибутов. Мы либо получим неоднозначность в определении понятия "атрибут", либо просто дженерики с похожим синтаксисом.
2. Инстанциированные атрибуты можно получить только через рефлексию. Рефлексия — это рантайм и автолоадинг. Статанализ же в идеале вообще не должен запускать анализируемый код. Именно поэтому появились такие проекты, как PHP Parser и Better Reflection. Если же обновлённые атрибуты будут использоваться только как синтаксис, то нет смысла их называть атрибутами.
3. Приведенную в статье декларацию атрибута-дженерика над выражением вообще не получится отрефлексировать, поскольку для выражений по определению невозможна рефлексия. Из-за этого синтаксис дженериков может быть реализован только на уровне языка.
Получается, что замаскированные под атрибуты дженерики технически не смогут ими быть. Ну а в таком случае проще реализовать стираемые дженерики с привычным синтаксисом
array<string, object>
. Если же по каким-то техническим причинам необходимо оборачивать декларации в #[]
, то пусть это просто будут дженерики с таким синтаксисом.Что касается самой концепции стираемых дженериков, я её однозначно поддерживаю. Да, такой подход требует наличия внешнего анализатора, но взамен даёт стандартизированный синтаксис, нативный парсинг кода с дженериками и популяризацию обобщённого программирования среди PHP-разработчиков.
Я очень рад, что Рома в очередной раз подогрел дискуссию вокруг дженериков. Любой подобный движ полезен для сообщества и приближает нас к результату.
Pronskiy
Generics via Attributes in PHP — Can We Have Them?
Roman Pronskiy
Дайджест PHP – Октябрь 2022
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышел PHP 8.2 RC 5
Очередная версия RC была выпущена по расписанию. Шестой RC ожидается 10 ноября и он будет последним перед финальным релизом PHP 8.2.
Подробно про все изменения в PHP 8.2 можно прочитать на сайтах PHP.Watch или stitcher.io.
🔹 Вышли PHP 8.0.25 и PHP 8.1.12
❗️Это выпуски с исправлением проблем безопасности. Всем пользователям рекомендуется обновиться. Подробнее на сайте PHP.Watch.
🐘 ЯДРО PHP
Большинство новостей ядра подробно освещаются в серии PHP Core Roundup от PHP Foundation, поэтому лишь кратко пробежимся:
✅ RFC: json_validate
RFC принят, новую функцию
❌✅ RFC: Improve unserialize() error handling
Tim Düsterhus предлагал добавить новое исключение
RFC бурно обсуждался в Twitter и в конце концов часть, касающаяся выбрасывания исключения, не была принята. Вместо этого будет увеличен уровень выдаваемой ошибки с
📣 RFC: Randomizer Additions
Tim Düsterhus и Joshua Rüsweg предлагают добавить новые методы классу
📣 RFC: Destructuring Coalesce
Bob Weinand предложил добавить оператор для значений по умолчанию в деструктивных присваиваниях.
🛠 ИНСТРУМЕНТЫ
🔹dunglas/frankenphp – Современный сервер приложений PHP, написанный на Go.
🔹Saeghe – Современный менеджер пакетов PHP. Теперь у PHP есть ещё один менеджер пакетов, он использует GitHub ссылки в качестве зависимостей.
🔹composer-unused/composer-unused – Пакет показывает неиспользуемые зависимости composer.
🔹heiglandreas/holidayChecker – Пакет для проверки праздничных дней.
🔹mevdschee/php-crud-api - Однофайловый PHP-скрипт, добавляющий REST API к базе данных SQL.
🔹Laragon - Ещё один инструмент локальной среды разработки: портативная, изолированная, быстрая и мощная альтернатива XAMPP и подобным. Подробнее об использовании.
⚫️ SYMFONY
❗️ Twig security release: Possibility to load a template outside a configured directory when using the filesystem loader от Fabien Potencier.
🔹emr-dev/sf-bug-bundle – Пакет для совместного использования страниц профилировщика. Подробнее об использовании.
🔴 LARAVEL
🔹spatie/laravel-dynamic-servers – Пакет для динамического создания и удаления серверов. Подробнее об использовании.
🔹creagia/laravel-sign-pad – Пакет для подписания документов и, по желанию, генерации PDF, связанных с моделями Eloquent. Подробнее об использовании.
🔹hammerstonedev/sidecar – Развертывание и выполнение функций AWS Lambda в Laravel.
📄 СТАТЬИ
🔹Цветные функции: ищем плохие архитектурные паттерны от Александра Кирсанова.
🔹Перестаньте использовать SQLite в Unit-тестах перевод статьи от Вадима Кравец.
🔹Yii3 Overview 1. Вступление от Дмитрия Дерепко.
🔹Декомпозируем регулярные выражения от Юрия Каткова.
🎬 ВИДЕО
🔹Пыхэфир #2 c Валентином Удальцовым.
🔹PHP-линч #1 – Первый в мире PHP-линч на канале PHP Point.
🔹RND PHP #5 – Митап сообщества PHP разработчиков города Ростов-на-Дону.
👨💻 СОБЫТИЯ
🔹PHP Russia – Крупнейшая конференция по PHP в России пройдёт 24-25 ноября в рамках HighLoad++ 2022.
🔹Podlodka PHP Crew – Недельная конференция с экспертами из топовых компаний — сессии в Zoom, сообщество в Slack и ламповая атмосфера.
—
Ещё больше новостей и ссылок в октябрьском выпуске PHP Annotated от JetBrains 💜
🎬 Дайджест PHP в видео-формате на канале CutCode
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышел PHP 8.2 RC 5
Очередная версия RC была выпущена по расписанию. Шестой RC ожидается 10 ноября и он будет последним перед финальным релизом PHP 8.2.
Подробно про все изменения в PHP 8.2 можно прочитать на сайтах PHP.Watch или stitcher.io.
🔹 Вышли PHP 8.0.25 и PHP 8.1.12
❗️Это выпуски с исправлением проблем безопасности. Всем пользователям рекомендуется обновиться. Подробнее на сайте PHP.Watch.
🐘 ЯДРО PHP
Большинство новостей ядра подробно освещаются в серии PHP Core Roundup от PHP Foundation, поэтому лишь кратко пробежимся:
✅ RFC: json_validate
RFC принят, новую функцию
json_validate()
добавят в PHP 8.3.❌✅ RFC: Improve unserialize() error handling
Tim Düsterhus предлагал добавить новое исключение
UnserializationFailedException
, которое выбрасывается в случае возникновения ошибки сериализации.RFC бурно обсуждался в Twitter и в конце концов часть, касающаяся выбрасывания исключения, не была принята. Вместо этого будет увеличен уровень выдаваемой ошибки с
E_NOTICE
до E_WARNING
.📣 RFC: Randomizer Additions
Tim Düsterhus и Joshua Rüsweg предлагают добавить новые методы классу
Randomizer
, которые реализуют часто используемые операции, но сложно реализуемые в пользовательском коде.📣 RFC: Destructuring Coalesce
Bob Weinand предложил добавить оператор для значений по умолчанию в деструктивных присваиваниях.
🛠 ИНСТРУМЕНТЫ
🔹dunglas/frankenphp – Современный сервер приложений PHP, написанный на Go.
🔹Saeghe – Современный менеджер пакетов PHP. Теперь у PHP есть ещё один менеджер пакетов, он использует GitHub ссылки в качестве зависимостей.
🔹composer-unused/composer-unused – Пакет показывает неиспользуемые зависимости composer.
🔹heiglandreas/holidayChecker – Пакет для проверки праздничных дней.
🔹mevdschee/php-crud-api - Однофайловый PHP-скрипт, добавляющий REST API к базе данных SQL.
🔹Laragon - Ещё один инструмент локальной среды разработки: портативная, изолированная, быстрая и мощная альтернатива XAMPP и подобным. Подробнее об использовании.
⚫️ SYMFONY
❗️ Twig security release: Possibility to load a template outside a configured directory when using the filesystem loader от Fabien Potencier.
🔹emr-dev/sf-bug-bundle – Пакет для совместного использования страниц профилировщика. Подробнее об использовании.
🔴 LARAVEL
🔹spatie/laravel-dynamic-servers – Пакет для динамического создания и удаления серверов. Подробнее об использовании.
🔹creagia/laravel-sign-pad – Пакет для подписания документов и, по желанию, генерации PDF, связанных с моделями Eloquent. Подробнее об использовании.
🔹hammerstonedev/sidecar – Развертывание и выполнение функций AWS Lambda в Laravel.
📄 СТАТЬИ
🔹Цветные функции: ищем плохие архитектурные паттерны от Александра Кирсанова.
🔹Перестаньте использовать SQLite в Unit-тестах перевод статьи от Вадима Кравец.
🔹Yii3 Overview 1. Вступление от Дмитрия Дерепко.
🔹Декомпозируем регулярные выражения от Юрия Каткова.
🎬 ВИДЕО
🔹Пыхэфир #2 c Валентином Удальцовым.
🔹PHP-линч #1 – Первый в мире PHP-линч на канале PHP Point.
🔹RND PHP #5 – Митап сообщества PHP разработчиков города Ростов-на-Дону.
👨💻 СОБЫТИЯ
🔹PHP Russia – Крупнейшая конференция по PHP в России пройдёт 24-25 ноября в рамках HighLoad++ 2022.
🔹Podlodka PHP Crew – Недельная конференция с экспертами из топовых компаний — сессии в Zoom, сообщество в Slack и ламповая атмосфера.
—
Ещё больше новостей и ссылок в октябрьском выпуске PHP Annotated от JetBrains 💜
🎬 Дайджест PHP в видео-формате на канале CutCode
Дайджест PHP – Ноябрь 2022
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышел PHP 8.2 RC 7
В этом году добавлена ещё одна, седьмая RC-версия, выход PHP 8.2.0 GA откладывается до 8 декабря.
Bob Weinand обнаружил несколько ошибок, которые редко встречаются в искусственном коде, но с большой вероятностью могут воспроизвестись в реальном коде.
❗Завершение цикла PHP 7
Для PHP 7.4 больше не будут выходить обновления, релиз PHP 7.4.33 стал последним, рекомендуется обновиться до поддерживаемой версии.
🔹 Вышли PHP 8.0.26 и PHP 8.1.13
🐛 Это выпуски с исправлением ошибок.
🎂 PHP Foundation исполнился 1 год
Год назад компания JetBrains опубликовала новость о создании PHP Foundation.
За прошедший год PHP Foundation поддержал работу 6 разработчиков ядра и ежемесячно публиковал обновления в серии PHP Core Roundup.
Ознакомьтесь с отчетом фонда за 2022 год.
Поддержать PHP Foundation можно на OpenCollective.
✅ Принят PSR-20: Clock
🔹 Группа PHP-FIG приняла PSR-20 с рекомендуемым интерфейсом
🐘 ЯДРО PHP
✅ RFC: Randomizer Additions
❌ RFC: Destructuring Coalesce
📣 RFC: Dynamic class constant fetch
Ilija Tovilo предложил добавить синтаксис для поиска констант класса.
📣 RFC: Arbitrary static variable initializers
Также Ilija Tovilo предлагает расширить синтаксис, позволяющий инициализатору статической переменной содержать произвольные выражения.
📣 RFC: Use exceptions by default in SQLite3 extension
Предлагается постепенно отказаться от предупреждений в модуле SQLite3.
📣 RFC: Readonly amendments
Nicolas Grekas и Máté Kocsis предлагают улучшить свойства и классы readonly.
🛠 PhpStorm
🔹 AMA с командой PhpStorm
🔹 Вышел PhpStorm 2022.3 RC – Полная поддержка PHP 8.2, новый пользовательский интерфейс (предварительный просмотр), поддержка Redis и многое другое.
🔹 VKCOM/modulite – Честная модульность внутри PHP.
🔴 LARAVEL
🎬 AMA About Laravel with Taylor Otwell
🔹 Как мы провели второй русскоязычный Laravel-митап от Михаила Радионова.
🔹 protonemedia/laravel-splade – Пакет для создания интерактивности непосредственно в Blade, без необходимости писать JS-код.
🟢 Yii
🔹 Новости Yii 2022, выпуск 2 от Александра Макарова.
🔹 Yii3 Overview 2. Вспомогательные инструменты разработки от Дмитрия Дерепко.
📄 СТАТЬИ
🔹 Как мы наш большой проект на KPHP мигрировали от Алексея Васильева.
🔹 KPHP спустя 2 года от Александра Кирсанова.
🔹 Старый код в новой обёртке — как наша команда избавлялась от legacy от Станислава Решетнева.
🎬 ВИДЕО
🔹 На Ютуб канале PHP Point вышли новые выпуски PHP-линча, где Валентин Удальцов разбирает несколько пакетов и комментирует код.
—
🎬 Дайджест PHP в видео-формате на канале CutCode
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышел PHP 8.2 RC 7
В этом году добавлена ещё одна, седьмая RC-версия, выход PHP 8.2.0 GA откладывается до 8 декабря.
Bob Weinand обнаружил несколько ошибок, которые редко встречаются в искусственном коде, но с большой вероятностью могут воспроизвестись в реальном коде.
❗Завершение цикла PHP 7
Для PHP 7.4 больше не будут выходить обновления, релиз PHP 7.4.33 стал последним, рекомендуется обновиться до поддерживаемой версии.
🔹 Вышли PHP 8.0.26 и PHP 8.1.13
🐛 Это выпуски с исправлением ошибок.
🎂 PHP Foundation исполнился 1 год
Год назад компания JetBrains опубликовала новость о создании PHP Foundation.
За прошедший год PHP Foundation поддержал работу 6 разработчиков ядра и ежемесячно публиковал обновления в серии PHP Core Roundup.
Ознакомьтесь с отчетом фонда за 2022 год.
Поддержать PHP Foundation можно на OpenCollective.
🔹 Группа PHP-FIG приняла PSR-20 с рекомендуемым интерфейсом
ClockInterface
для работы с датой и временем.✅ RFC: Randomizer Additions
❌ RFC: Destructuring Coalesce
📣 RFC: Dynamic class constant fetch
Ilija Tovilo предложил добавить синтаксис для поиска констант класса.
📣 RFC: Arbitrary static variable initializers
Также Ilija Tovilo предлагает расширить синтаксис, позволяющий инициализатору статической переменной содержать произвольные выражения.
📣 RFC: Use exceptions by default in SQLite3 extension
Предлагается постепенно отказаться от предупреждений в модуле SQLite3.
📣 RFC: Readonly amendments
Nicolas Grekas и Máté Kocsis предлагают улучшить свойства и классы readonly.
🔹 AMA с командой PhpStorm
🔹 Вышел PhpStorm 2022.3 RC – Полная поддержка PHP 8.2, новый пользовательский интерфейс (предварительный просмотр), поддержка Redis и многое другое.
🔹 VKCOM/modulite – Честная модульность внутри PHP.
🎬 AMA About Laravel with Taylor Otwell
🔹 Как мы провели второй русскоязычный Laravel-митап от Михаила Радионова.
🔹 protonemedia/laravel-splade – Пакет для создания интерактивности непосредственно в Blade, без необходимости писать JS-код.
🔹 Новости Yii 2022, выпуск 2 от Александра Макарова.
🔹 Yii3 Overview 2. Вспомогательные инструменты разработки от Дмитрия Дерепко.
📄 СТАТЬИ
🔹 Как мы наш большой проект на KPHP мигрировали от Алексея Васильева.
🔹 KPHP спустя 2 года от Александра Кирсанова.
🔹 Старый код в новой обёртке — как наша команда избавлялась от legacy от Станислава Решетнева.
🎬 ВИДЕО
🔹 На Ютуб канале PHP Point вышли новые выпуски PHP-линча, где Валентин Удальцов разбирает несколько пакетов и комментирует код.
—
🎬 Дайджест PHP в видео-формате на канале CutCode
Please open Telegram to view this post
VIEW IN TELEGRAM
Вышел PHP 8.2 🎉
PHP 8.2 — большое обновление языка PHP.
Оно содержит множество новых возможностей, включая readonly-классы, самостоятельные типы null, false и true, устаревшие динамические свойства, улучшение производительности и многое другое.
https://www.php.net/releases/8.2/ru.php
PHP 8.2 — большое обновление языка PHP.
Оно содержит множество новых возможностей, включая readonly-классы, самостоятельные типы null, false и true, устаревшие динамические свойства, улучшение производительности и многое другое.
https://www.php.net/releases/8.2/ru.php
Дайджест PHP – Январь 2023
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.0.27, PHP 8.1.14, PHP 8.2.1
❗ В этих версиях исправлена ошибка безопасности.
❗ Завершилась активная поддержка PHP 8.0, теперь версия будет получать только секьюрити-обновления.
🛠 What’s Next in PhpStorm: The 2023.1 Public Roadmap
В первом выпуске 2023 года команда JetBrains стремится повысить производительность и ускорить индексирование, добавить интеграцию с 3v4l.org, улучшить поддержку дженериков, а также тегов PHPStan и Psalm.
🔹 Вышел Symfony 6.2
Улучшенная поддержка Emoji, аутентификатор Access Token, встроенные атрибуты Cache+Security+Template+Doctrine, улучшенная поддержка перечислений и многое другое.
Ознакомьтесь со списком новых возможностей, чтобы узнать об основных особенностях этого нового выпуска.
🔹Вышли Psalm 5, Xdebug 3.2.0, PHPStan 1.9.0, Drupal 10, amphp/amp 3.0.0, PHP-DI 7.0
🐘 ЯДРО PHP
✅ RFC: Dynamic class constant fetch
✅ RFC: More Appropriate Date/Time Exceptions
📊 RFC: Asymmetric Visibility
📣 RFC: List\unique() and Assoc\unique()
Ilija Tovilo предложил добавить две новые функции. Основная проблема в том, что функция
📣 RFC: Unicode Text Processing
Derick Rethans предложил новый класс, чтобы использовать и обрабатывать текст (Unicode) более удобным для разработчиков способом по сравнению с модулем intl.
Все методы нового класса
📣 RFC: Add SameSite cookie attribute parameter
George Peter Banyard предлагает добавить параметр
🔹 18 функций/изменений для улучшения ядра PHP
Thomas Hruska реализовал cubiclesoft/php-ext-qolfuncs – набор функций для улучшения жизни PHP-разработчика.
Сради них есть несколько довольно интересных дополнений:
С нетерпением ждём появления официального RFC.
📄 СТАТЬИ
🔹 Вышел PHP 8.2: разбираем главные изменения – Александр Макаров, Валентин Удальцов и Владлен Гилязетдинов разбираются, какие новые фичи появились в PHP 8.2, насколько эти изменения глобальны и какую роль в них сыграл проект РHP Foundation.
🔹 Откуда что берется: интеграция с ЕСИА на языке PHP
🔹 Как мы интегрировали и настроили для работы Conventional Commits в PHPStorm
🔹 Честные модули внутри PHP: теперь они существуют и запись доклада с HighLoad++
🔹 Популяризация JSON-RPC (часть 1)
🔹 Работа с Веб-сокетами на PHP
🔹 В очередь, ...! Как управлять состоянием системы через события
🔹 Зачем и как использовать Объекты передачи данных в Laravel
🎬 ВИДЕО
🔹 ID-баттл: UUID vs автоинкремент
🔹 Docker for PHP developer: tips and tricks
🔹 PHP: почему его вечно хоронят, актуально ли его учить и чем он полезен бизнесу
—
🎬 Дайджест PHP в видео-формате на канале CutCode
Ещё больше новостей и ссылок в январском выпуске PHP Annotated от JetBrains 💜
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.0.27, PHP 8.1.14, PHP 8.2.1
❗ В этих версиях исправлена ошибка безопасности.
❗ Завершилась активная поддержка PHP 8.0, теперь версия будет получать только секьюрити-обновления.
В первом выпуске 2023 года команда JetBrains стремится повысить производительность и ускорить индексирование, добавить интеграцию с 3v4l.org, улучшить поддержку дженериков, а также тегов PHPStan и Psalm.
🔹 Вышел Symfony 6.2
Улучшенная поддержка Emoji, аутентификатор Access Token, встроенные атрибуты Cache+Security+Template+Doctrine, улучшенная поддержка перечислений и многое другое.
Ознакомьтесь со списком новых возможностей, чтобы узнать об основных особенностях этого нового выпуска.
🔹Вышли Psalm 5, Xdebug 3.2.0, PHPStan 1.9.0, Drupal 10, amphp/amp 3.0.0, PHP-DI 7.0
✅ RFC: Dynamic class constant fetch
✅ RFC: More Appropriate Date/Time Exceptions
📊 RFC: Asymmetric Visibility
📣 RFC: List\unique() and Assoc\unique()
Ilija Tovilo предложил добавить две новые функции. Основная проблема в том, что функция
array_unique
использует нестрогое сравнение, новые фунции будут использовать строгое сравнение, первая — отбрасывая ключи, а вторая — сохраняя их.📣 RFC: Unicode Text Processing
Derick Rethans предложил новый класс, чтобы использовать и обрабатывать текст (Unicode) более удобным для разработчиков способом по сравнению с модулем intl.
Все методы нового класса
Text
будут возвращать новый (неизменяемый) объект.📣 RFC: Add SameSite cookie attribute parameter
George Peter Banyard предлагает добавить параметр
SameSite
во все соответствующие функции.🔹 18 функций/изменений для улучшения ядра PHP
Thomas Hruska реализовал cubiclesoft/php-ext-qolfuncs – набор функций для улучшения жизни PHP-разработчика.
Сради них есть несколько довольно интересных дополнений:
str_splice()
, str_realloc()
, fread_mem()
, is_reference()
и refcount()
.С нетерпением ждём появления официального RFC.
📄 СТАТЬИ
🔹 Вышел PHP 8.2: разбираем главные изменения – Александр Макаров, Валентин Удальцов и Владлен Гилязетдинов разбираются, какие новые фичи появились в PHP 8.2, насколько эти изменения глобальны и какую роль в них сыграл проект РHP Foundation.
🔹 Откуда что берется: интеграция с ЕСИА на языке PHP
🔹 Как мы интегрировали и настроили для работы Conventional Commits в PHPStorm
🔹 Честные модули внутри PHP: теперь они существуют и запись доклада с HighLoad++
🔹 Популяризация JSON-RPC (часть 1)
🔹 Работа с Веб-сокетами на PHP
🔹 В очередь, ...! Как управлять состоянием системы через события
🔹 Зачем и как использовать Объекты передачи данных в Laravel
🎬 ВИДЕО
🔹 ID-баттл: UUID vs автоинкремент
🔹 Docker for PHP developer: tips and tricks
🔹 PHP: почему его вечно хоронят, актуально ли его учить и чем он полезен бизнесу
—
🎬 Дайджест PHP в видео-формате на канале CutCode
Ещё больше новостей и ссылок в январском выпуске PHP Annotated от JetBrains 💜
Please open Telegram to view this post
VIEW IN TELEGRAM
Дайджест PHP – Февраль 2023
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.0.28, PHP 8.1.16 и PHP 8.2.3
❗️Исправлены уязвимости CVE-2023-0568, CVE-2023-0567 и CVE-2023-0662.
🔹 Вышел Laravel 10
🔹 Вышел PHPUnit 10
✅ Грядет большой релиз стиля кодирования PER
Версия 1.0.0 была копией PSR-12. Следующая версия посвящена расширению спецификации до последних функций PHP и исправлению несоответствий.
🐘 ЯДРО PHP
❌ RFC: Asymmetric Visibility
Ilija Tovilo и Larry Garfield получили необходимые отзывы и, возможно, представят пересмотренную версию RFC, а пока они сосредоточатся на RFC по добавлению хуков и аксессоров к свойствам.
✅ RFC: Readonly amendments
📣 RFC: Path to Saner Increment/Decrement operators – George Peter Banyard предлагает улучшить операторы инкремента и декремента.
📣 RFC: Pass Scope to Magic Accessors – Nicolas Grekas и Ilija Tovilo предлагают передавать область вызова в магические аксессоры, чтобы сделать её получение более тривиальным.
📣 RFC: Typed class constants – Benas Seliuginas и Máté Kocsis предлагают добавить поддержку объявления типов констант для классов и интерфейсов.
📣 RFC: Working With Substrings – Thomas Hruska предлагает оптимизировать работу с подстроками.
🛠 PhpStorm 2023.1 Early Access Program Is Open!
- Запуск PHP-скриптов на 3v4l.org
- Улучшение производительности, включая общие индексы для популярных пакетов PHP
- Улучшения в новом пользовательском интерфейсе
- Поиск и замен на основе регулярных выражений
⚫ SYMFONY
🔹 Оптимизация OneToMany коллекций Doctrine
🔹 Докеризируем Symfony
🔹 Clean Architecture, DDD, гексагональная архитектура. Разбираем на практике blog на Symfony
🔴 LARAVEL
🎬 Обзор Laravel 10. Что нового в обновлении и попытка апгрейда проекта с Laravel 9 до 10 версии
🎬 Разбор метода Macro
🎬 Разбор Query Builder, Collections, Model в Laravel
🟢 YII
🔹 Yii Validator — простой и мощный
🔹 Yii news 2023, issue 1
🛠 ИНСТРУМЕНТЫ
🔹 paratestphp/paratest – Пакет параллельного тестирования для PHPUnit. Вышла версия 7.0.0.
🔹 spatie/php-structure-discoverer – Пакет для автоматического обнаружения классов в PHP-приложении.
🔹 TheDragonCode/benchmark – Простой инструмент для сравнения времени, необходимого для выполнения двух различных блоков кода.
🔹 Sammyjo20/Saloon – Идея пакета заключается в том, чтобы упростить создание SDK для сервисов или организовать доступ к различным API в едином стиле.
📄 СТАТЬИ
🔹 Импорт полной базы ФИАС за 9 часов, How To
🔹 Простой бенчмарк для PHP приложений
🔹 Двухуровневый CI-процесс PHP-проекта
🔹 Как правильно проверять сложность пароля пользователя при регистрации
🔹 Не пытайтесь обезопасить ввод. Экранируйте вывод
🔹 PHPStorm + XDebug + Docker
🔹 Итоги третьего ежегодного опроса PHP-сообщества
🔹 Готовим версионирование API в PHP-фреймворках
💙АУДИО/ВИДЕО
🎬 PHP-линч #9
🎵 Самописные инфраструктурные компоненты
📅 СОБЫТИЯ
💙 Podlodka PHP Crew × Точка – 27 февраля - 3 марта.
—
Ещё больше новостей и ссылок в февральском выпуске PHP Annotated от JetBrains 💜
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.0.28, PHP 8.1.16 и PHP 8.2.3
❗️Исправлены уязвимости CVE-2023-0568, CVE-2023-0567 и CVE-2023-0662.
🔹 Вышел Laravel 10
🔹 Вышел PHPUnit 10
Версия 1.0.0 была копией PSR-12. Следующая версия посвящена расширению спецификации до последних функций PHP и исправлению несоответствий.
❌ RFC: Asymmetric Visibility
Ilija Tovilo и Larry Garfield получили необходимые отзывы и, возможно, представят пересмотренную версию RFC, а пока они сосредоточатся на RFC по добавлению хуков и аксессоров к свойствам.
✅ RFC: Readonly amendments
📣 RFC: Path to Saner Increment/Decrement operators – George Peter Banyard предлагает улучшить операторы инкремента и декремента.
📣 RFC: Pass Scope to Magic Accessors – Nicolas Grekas и Ilija Tovilo предлагают передавать область вызова в магические аксессоры, чтобы сделать её получение более тривиальным.
📣 RFC: Typed class constants – Benas Seliuginas и Máté Kocsis предлагают добавить поддержку объявления типов констант для классов и интерфейсов.
📣 RFC: Working With Substrings – Thomas Hruska предлагает оптимизировать работу с подстроками.
- Запуск PHP-скриптов на 3v4l.org
- Улучшение производительности, включая общие индексы для популярных пакетов PHP
- Улучшения в новом пользовательском интерфейсе
- Поиск и замен на основе регулярных выражений
🔹 Оптимизация OneToMany коллекций Doctrine
🔹 Докеризируем Symfony
🔹 Clean Architecture, DDD, гексагональная архитектура. Разбираем на практике blog на Symfony
🎬 Обзор Laravel 10. Что нового в обновлении и попытка апгрейда проекта с Laravel 9 до 10 версии
🎬 Разбор метода Macro
🎬 Разбор Query Builder, Collections, Model в Laravel
🔹 Yii Validator — простой и мощный
🔹 Yii news 2023, issue 1
🛠 ИНСТРУМЕНТЫ
🔹 paratestphp/paratest – Пакет параллельного тестирования для PHPUnit. Вышла версия 7.0.0.
🔹 spatie/php-structure-discoverer – Пакет для автоматического обнаружения классов в PHP-приложении.
🔹 TheDragonCode/benchmark – Простой инструмент для сравнения времени, необходимого для выполнения двух различных блоков кода.
🔹 Sammyjo20/Saloon – Идея пакета заключается в том, чтобы упростить создание SDK для сервисов или организовать доступ к различным API в едином стиле.
📄 СТАТЬИ
🔹 Импорт полной базы ФИАС за 9 часов, How To
🔹 Простой бенчмарк для PHP приложений
🔹 Двухуровневый CI-процесс PHP-проекта
🔹 Как правильно проверять сложность пароля пользователя при регистрации
🔹 Не пытайтесь обезопасить ввод. Экранируйте вывод
🔹 PHPStorm + XDebug + Docker
🔹 Итоги третьего ежегодного опроса PHP-сообщества
🔹 Готовим версионирование API в PHP-фреймворках
💙АУДИО/ВИДЕО
🎬 PHP-линч #9
🎵 Самописные инфраструктурные компоненты
📅 СОБЫТИЯ
💙 Podlodka PHP Crew × Точка – 27 февраля - 3 марта.
—
Ещё больше новостей и ссылок в февральском выпуске PHP Annotated от JetBrains 💜
Please open Telegram to view this post
VIEW IN TELEGRAM
Дайджест PHP – Апрель 2023
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.1.18 и PHP 8.2.5
🔹 Вышел Pest 2.0
🔹 Вышел Bref 2.0
🔹 Вышел стиль кодирования PER 2.0
🔹 Выбраны релиз-менеджеры PHP 8.3
💜 PHP Foundation Update, March 2023
🛠 Вышел PhpStorm 2023.1
🐘 ЯДРО PHP
✅ RFC: Arbitrary static variable initializers
📣 RFC: Clone with
📣 RFC: New core autoloading mechanism with support for function autoloading
📣 Jakub Zelenka предложил сформировать Технический комитет PHP
🔴 LARAVEL
🔹 Вышел Valet 4.0
🔹 Вышел Laravel IDEA 7.0
🎬 Обзор Spatie route attributes
🎬 Обзор пакета Fortify для Laravel
🛠️ ИНСТРУМЕНТЫ
🔹 crazywhalecc/static-php-cli - Инструмент для сборки PHP-приложений в один бинарный файл без лишних зависимостей.
🔹 aschmelyun/subvert - Создание субтитров, аннотаций и глав из видео за считанные секунды.
🚧 NativePHP - Marcel Pociot создаёт инструмент для запуска десктопных приложений Laravel/PHP поверх Electron или Tauri.
📄 СТАТЬИ
📄 Как и зачем тестировать код на бэкенде: рекомендации для новичков
📄 Апгрейд и рефакторинг PHP-проектов — теперь это просто с Rector
📄 Как разминировать свой код на PHP (и не только)?
📄 «Давайте перепишем всё с нуля». Почему такой подход интереснее программистам, а не бизнесу
📄 Компилируем быстрые консольные .exe приложения на PHP 8.1 в 2023 году, а почему бы и нет?
📄 Проектируем реактивное — Message-Driven системы на PHP
📄 ЦУЦ — или как свести 15 тысяч товаров от разных поставщиков на коленке
📄 Я пробовал GitHub Copilot, и я в восторге
🎬 ВИДЕО
🔹 PHP-линч #10
🔹 PHP-линч #11
🔹 PHP-линч #12
—
Ещё больше новостей и ссылок в апрельском выпуске PHP Annotated от JetBrains 💜
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.1.18 и PHP 8.2.5
🔹 Вышел Pest 2.0
🔹 Вышел Bref 2.0
🔹 Вышел стиль кодирования PER 2.0
🔹 Выбраны релиз-менеджеры PHP 8.3
✅ RFC: Arbitrary static variable initializers
📣 RFC: Clone with
📣 RFC: New core autoloading mechanism with support for function autoloading
📣 Jakub Zelenka предложил сформировать Технический комитет PHP
🔹 Вышел Valet 4.0
🔹 Вышел Laravel IDEA 7.0
🎬 Обзор Spatie route attributes
🎬 Обзор пакета Fortify для Laravel
🛠️ ИНСТРУМЕНТЫ
🔹 crazywhalecc/static-php-cli - Инструмент для сборки PHP-приложений в один бинарный файл без лишних зависимостей.
🔹 aschmelyun/subvert - Создание субтитров, аннотаций и глав из видео за считанные секунды.
🚧 NativePHP - Marcel Pociot создаёт инструмент для запуска десктопных приложений Laravel/PHP поверх Electron или Tauri.
📄 СТАТЬИ
🎬 ВИДЕО
🔹 PHP-линч #10
🔹 PHP-линч #11
🔹 PHP-линч #12
—
Ещё больше новостей и ссылок в апрельском выпуске PHP Annotated от JetBrains 💜
Please open Telegram to view this post
VIEW IN TELEGRAM
Дайджест PHP – Июнь 2023
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
❗️ Вышли PHP 8.0.29, PHP 8.1.20 и PHP 8.2.7
🔹 PHP 8.3.0 Alpha 1 доступен для тестирования
❗️ Исследователь изменил файл composer.json 14 PHP-библиотек в репозитории Packagist в попытке найти работу
🔹 Вышел Statamic 4
🛠 Открыта программа раннего доступа PhpStorm 2023.2
🐘 ЯДРО PHP
📣 RFC: Deprecate functions with overloaded signatures
❌ RFC: PHP Technical Committee
✅ RFC: Use exceptions by default in SQLite3 extension
📣 RFC: Marking overridden methods (#[\Override])
📣 RFC: NameOf
🔴 LARAVEL
🎬 Гайд по отношениям в Laravel
🎬 Обзор администраторской панели MoonShine
🎬 PEST тесты в Laravel. Обзор фреймворка для написания тестов
⚫ SYMFONY
🔹 Вышел Symfony 6.3.0
📄 Попрощайтесь с проверками на null и исключениями: использование монады Maybe в Symfony
🟢 YII
📄 Новости Yii 2023, выпуск 2
🎬 Конфигурация приложения в Yii3
📄 СТАТЬИ
🔹 gRPC сервер на PHP с помощью Roadrunner, Spiral Framework, Docker
📄 Долгоиграющие приложения на PHP
📄 Как создать приватные репозитории composer
📄 Лови мутанта! Мутационные тесты: зачем и как
📄 Анализ и приоритизация задач в тикетной системе: как красиво реализовать на PHP
📄 Хождение по граблям PDO: что скрывают за собой современные PHP ORM
📄 Пишем Telegram бота для распознавания голосовых сообщений и их обработки с помощью AI
📄 Использование ICU Message Format в PHP
🔹 Репозитории и их истинное назначение
🎬 ВИДЕО
🔹PHP-линч #16
🔹PHP-линч #17
🔹PHP-линч #18
—
Ещё больше новостей и ссылок в июньском выпуске PHP Annotated от JetBrains 💜
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
❗️ Вышли PHP 8.0.29, PHP 8.1.20 и PHP 8.2.7
🔹 PHP 8.3.0 Alpha 1 доступен для тестирования
❗️ Исследователь изменил файл composer.json 14 PHP-библиотек в репозитории Packagist в попытке найти работу
🔹 Вышел Statamic 4
📣 RFC: Deprecate functions with overloaded signatures
❌ RFC: PHP Technical Committee
✅ RFC: Use exceptions by default in SQLite3 extension
📣 RFC: Marking overridden methods (#[\Override])
📣 RFC: NameOf
🎬 Гайд по отношениям в Laravel
🎬 Обзор администраторской панели MoonShine
🎬 PEST тесты в Laravel. Обзор фреймворка для написания тестов
🔹 Вышел Symfony 6.3.0
🎬 Конфигурация приложения в Yii3
📄 СТАТЬИ
🔹 gRPC сервер на PHP с помощью Roadrunner, Spiral Framework, Docker
🔹 Репозитории и их истинное назначение
🎬 ВИДЕО
🔹PHP-линч #16
🔹PHP-линч #17
🔹PHP-линч #18
—
Ещё больше новостей и ссылок в июньском выпуске PHP Annotated от JetBrains 💜
Please open Telegram to view this post
VIEW IN TELEGRAM
Дайджест PHP – Июль 2023
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.1.21 и PHP 8.2.8
🔹 PHP 8.3.0 Beta 1 доступен для тестирования
🔹 Вышел Livewire 3
🔹 Вышел NativePHP
🛠 Вышел PhpStorm 2023.2 Beta
🔹 Вышел Pest «Spicy Summer»
🐘 ЯДРО PHP
✅ RFC: Marking overridden methods (#[\Override])
✅ RFC: Deprecations for PHP 8.3
✅ RFC: Deprecate functions with overloaded signatures
✅ RFC: Deprecate remains of string evaluated code assertions
✅ RFC: Path to Saner Increment/Decrement operators
✅ RFC: PDO driver specific sub-classes
❌ RFC: Interface Default Methods
📣 RFC: Closure self reference
🔴 LARAVEL
🔹 Представлены 4 новых пакета: Folio, Volt, Herd и Prompts
🔹 Новые возможности и изменения Livewire v3
📄 Постановка задач в очередь Laravel сторонними сервисами
🎬 Middlewares безопасности в проектах на Laravel
🎬 Отношения hasOneThrough и hasManyThrough
⚫ SYMFONY
🔹 Romaixn/gosumer – Использование сообщений Symfony Messenger с помощью Go.
🟢 YII
🔹 yiisoft/proxy-middleware 1.0.0
🔹 yiisoft/rate-limiter 3.0.0
🔹 Embracing the Future: Yii Framework Updates and Yii 2.2 Discussions
📄 СТАТЬИ
📄 PHP. Как увеличить потребление памяти в 3 и более раз при работе с массивами
📄 Разбираемся с асинхронным PHP
📄 Генерация и валидация чисел по алгоритму Луна
📄 Неудачное внедрение Redis Cluster в монолит на PHP 7.2.X
📄 Как два байта переслать: контрибьютим в KPHP
📄 Управление памятью в PHP. Сборка мусора, слабые ссылки и прочая челядь
🗓 СОБЫТИЯ
🔹Podlodka PHP Crew, 16 – 20 октября
—
Ещё больше новостей и ссылок в июльском выпуске PHP Annotated от JetBrains 💜
PHP-дайджест в видео формате на канале CutCode 🎬
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.1.21 и PHP 8.2.8
🔹 PHP 8.3.0 Beta 1 доступен для тестирования
🔹 Вышел Livewire 3
🔹 Вышел NativePHP
🔹 Вышел Pest «Spicy Summer»
✅ RFC: Marking overridden methods (#[\Override])
✅ RFC: Deprecations for PHP 8.3
✅ RFC: Deprecate functions with overloaded signatures
✅ RFC: Deprecate remains of string evaluated code assertions
✅ RFC: Path to Saner Increment/Decrement operators
✅ RFC: PDO driver specific sub-classes
❌ RFC: Interface Default Methods
📣 RFC: Closure self reference
🔹 Представлены 4 новых пакета: Folio, Volt, Herd и Prompts
🔹 Новые возможности и изменения Livewire v3
🎬 Middlewares безопасности в проектах на Laravel
🎬 Отношения hasOneThrough и hasManyThrough
🔹 Romaixn/gosumer – Использование сообщений Symfony Messenger с помощью Go.
🔹 yiisoft/proxy-middleware 1.0.0
🔹 yiisoft/rate-limiter 3.0.0
🔹 Embracing the Future: Yii Framework Updates and Yii 2.2 Discussions
📄 СТАТЬИ
🗓 СОБЫТИЯ
🔹Podlodka PHP Crew, 16 – 20 октября
—
Ещё больше новостей и ссылок в июльском выпуске PHP Annotated от JetBrains 💜
PHP-дайджест в видео формате на канале CutCode 🎬
Please open Telegram to view this post
VIEW IN TELEGRAM
Дайджест PHP – Сентябрь 2023
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
❗️ Вышли PHP 8.0.30, PHP 8.1.22 и PHP 8.2.9
🔹 Вышли PHP 8.1.23 и PHP 8.2.10
🔹 Вышел PHP 8.3.0RC2
🔹 Предсавлен RFC Vote
🔹 Вышел WordPress 6.3 «Lionel»
🛠 Вышел PhpStorm 2023.2
🛠 PhpStorm 2023.3 Roadmap
🔹 Вышел CakePHP 5
🔹 Вышел Filament 3
🐘 ЯДРО PHP
❌ RFC: Support optional suffix parameter in tempnam
📊 RFC: Increasing the default BCrypt cost
📣 RFC: DOM HTML5 parsing and serialization
📣 RFC: XML_OPTION_PARSE_HUGE
📣 RFC: Add 4 new rounding modes to round() function
📣 RFC: A new JIT implementation based on IR Framework
🔴 LARAVEL
🎬 Обзор пакета Laravel Folio
🎬 Обзор пакета Laravel Prompts
🎬 Обзор NativePHP
📄 Организация кода в Laravel. Личный опыт
📄 Первый взгляд на MoonShine
⚫ SYMFONY
🔹 gRPC сервер и клиент на Symfony
📄 EasyAdmin и Mercure: реальный юзкейс
❗Twig 2 end of life
📄 СТАТЬИ
🔹 Ускоряем PHPUnit Code Coverage с помощью PCOV
📄 PHP Fibers: практический пример
📄 Как мы планировали повысить версию PHP за месяц, а потратили на это год
📄 Почему тип поля enum на уровне базы — зло
📄 Уменьшаем количество багов в коде расширяя возможности статического PHP анализатора Psalm
📄 Технология передачи данных в секретный контур
📄 Интернет из PHP
📄 Неортодоксальный Eloquent Часть 1, Часть 2
🎬 ВИДЕО
🔹 PHP-линч #20
🔹 PHP-линч #21
🔹 Атрибуты в PHP
🔹 Typhoon 0.2.0
🗓 СОБЫТИЯ
🔹Podlodka PHP Crew, 16 – 20 октября
—
Ещё больше новостей и ссылок в сентябрьском выпуске PHP Annotated от JetBrains 💜
PHP-дайджест в видео формате на канале CutCode 🎬
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
❗️ Вышли PHP 8.0.30, PHP 8.1.22 и PHP 8.2.9
🔹 Вышли PHP 8.1.23 и PHP 8.2.10
🔹 Вышел PHP 8.3.0RC2
🔹 Предсавлен RFC Vote
🔹 Вышел WordPress 6.3 «Lionel»
🔹 Вышел CakePHP 5
🔹 Вышел Filament 3
❌ RFC: Support optional suffix parameter in tempnam
📊 RFC: Increasing the default BCrypt cost
📣 RFC: DOM HTML5 parsing and serialization
📣 RFC: XML_OPTION_PARSE_HUGE
📣 RFC: Add 4 new rounding modes to round() function
📣 RFC: A new JIT implementation based on IR Framework
🎬 Обзор пакета Laravel Folio
🎬 Обзор пакета Laravel Prompts
🎬 Обзор NativePHP
🔹 gRPC сервер и клиент на Symfony
❗Twig 2 end of life
📄 СТАТЬИ
🔹 Ускоряем PHPUnit Code Coverage с помощью PCOV
🎬 ВИДЕО
🔹 PHP-линч #20
🔹 PHP-линч #21
🔹 Атрибуты в PHP
🔹 Typhoon 0.2.0
🗓 СОБЫТИЯ
🔹Podlodka PHP Crew, 16 – 20 октября
—
Ещё больше новостей и ссылок в сентябрьском выпуске PHP Annotated от JetBrains 💜
PHP-дайджест в видео формате на канале CutCode 🎬
Please open Telegram to view this post
VIEW IN TELEGRAM
Дайджест PHP – Октябрь 2023
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.1.25 и PHP 8.2.12
🔹 Вышел PHP 8.3.0RC5
🎂 Symfony исполнилось 18 лет
🛠 Открыта программа раннего доступа PhpStorm 2023.3
🐘 ЯДРО PHP
✅ RFC: Increasing the default BCrypt cost
✅ RFC: A new JIT implementation based on IR Framework
✅ RFC: DOM HTML5 parsing and serialization
📣 RFC: Rounding Integers as int
📣 RFC: Unbundle ext/imap, ext/pspell, ext/oci8, and ext/PDO_OCI
📣 RFC: RFC1867 for non-POST HTTP
📣 RFC: Multibyte for trim function mb_trim, mb_ltrim and mb_rtrim
📣 RFC: Change the edge case of round()
🔴 LARAVEL
📄 Постановка задачи (Job) в очередь Laravel из хранимой процедуры или триггера PostgreSQL
📄 Persistent-request библиотека для надежных запросов
🎬 Директива Props в blade-компонентах
🎬 Обзор Livewire 3 и Volt
🎬 LazyCollections и PHP генераторы
🟢 YII
🔹 Yii Router Composer Attribute Collector
🔹 Yii Strings 2.3
🔹 Yii Auth 3.1
🎬 Инструменты обеспечения качества библиотек в PHP
📄 СТАТЬИ
📄 Code smells — обзор на примере PHP
📄 Какой длины должны быть классы — когда «чистый» код на самом деле не так уж и хорош
🎬 ВИДЕО
🔹 Разбираем срез знаний для "Хардкорного курса PHP"
—
Ещё больше новостей и ссылок в октябрьском выпуске PHP Annotated от JetBrains 💜
PHP-дайджест в видео формате на канале CutCode 🎬
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🔹 Вышли PHP 8.1.25 и PHP 8.2.12
🔹 Вышел PHP 8.3.0RC5
🎂 Symfony исполнилось 18 лет
✅ RFC: Increasing the default BCrypt cost
✅ RFC: A new JIT implementation based on IR Framework
✅ RFC: DOM HTML5 parsing and serialization
📣 RFC: Rounding Integers as int
📣 RFC: Unbundle ext/imap, ext/pspell, ext/oci8, and ext/PDO_OCI
📣 RFC: RFC1867 for non-POST HTTP
📣 RFC: Multibyte for trim function mb_trim, mb_ltrim and mb_rtrim
📣 RFC: Change the edge case of round()
🎬 Директива Props в blade-компонентах
🎬 Обзор Livewire 3 и Volt
🎬 LazyCollections и PHP генераторы
🔹 Yii Router Composer Attribute Collector
🔹 Yii Strings 2.3
🔹 Yii Auth 3.1
🎬 Инструменты обеспечения качества библиотек в PHP
📄 СТАТЬИ
🎬 ВИДЕО
🔹 Разбираем срез знаний для "Хардкорного курса PHP"
—
Ещё больше новостей и ссылок в октябрьском выпуске PHP Annotated от JetBrains 💜
PHP-дайджест в видео формате на канале CutCode 🎬
Please open Telegram to view this post
VIEW IN TELEGRAM
Вышел PHP 8.3 🎉
PHP 8.3 — большое обновление языка PHP.
Оно содержит множество новых возможностей, таких как явная типизация констант классов, глубокое клонирование readonly-свойств, а также улучшения класса Randomizer.
Как всегда, в нём также улучшена производительность, исправлены ошибки и многое другое.
https://www.php.net/releases/8.3/ru.php
PHP 8.3 — большое обновление языка PHP.
Оно содержит множество новых возможностей, таких как явная типизация констант классов, глубокое клонирование readonly-свойств, а также улучшения класса Randomizer.
Как всегда, в нём также улучшена производительность, исправлены ошибки и многое другое.
https://www.php.net/releases/8.3/ru.php
Дайджест PHP – Ноябрь 2023
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🎬 Обзор нововведений PHP 8.3
⚠️ PHP 8.0 больше не получает обновления безопасности
🔹 Вышли PHP 8.1.26 and PHP 8.2.13
🎂 PHP Foundation исполнилось 2 года
🔹 Экосистема разработки в 2023 году
🐘 ЯДРО PHP
📣 RFC: Resource to object conversion
📣 RFC: Release cycle update
📣 RFC: Improve callbacks in ext/dom and ext/xsl
📣 RFC: Change how JIT is disabled by default
📣 RFC: Final anonymous classes
📣 RFC: Property Hooks
🔴 LARAVEL
🔹 Представлен Laravel Pulse
🔹 Вышел Tinkerwell 4
📄 MoonShine 2.0. Что нового?
📄 Альтернатива Nova: почему решили перейти с самописного решения на Orchid
📄 Сортировка в Laravel по полям relation-ов
🎬 Подробный гайд по Form Requests в Laravel
🎬 Разработка собственного драйвера Socialite
⚫️ SYMFONY
🔹 Вышли Symfony 6.4 и 7.0
📄 Symfony под капотом: Symfony Messenger и механизм повторной обработки сообщений при ошибках
📄 Типичный Swagger без гмо
🟢 YII
🔹 Yii Database 1.2
🔹 Yii Widget 2.1
🔹 Yii Config 1.4
📄 СТАТЬИ
📄 Безотказные очереди в RabbitMQ: Гарантированная доставка сообщений
📄 А был ли баг? Может бага и не было? Зачем, как и чем тестировать PHP код
📄 Что такое гексагональная архитектура. Разделение бизнес-логики и инфраструктуры с помощью портов и адаптеров
🔹 PSR и суффиксы для интерфейсов
🎬 ВИДЕО
🔹 RND PHP #6
🔹 Александр Макаров - «Следуй за мечтой»
🔹 LivePHP SPb Meetup #1
🎙 АУДИО
🔹 Сколько можно заработать на курсе по PHP?
—
Ещё больше новостей и ссылок в ноябрьском выпуске PHP Annotated от JetBrains 💜
PHP-дайджест в видео формате на канале CutCode 🎬
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!
⚡️ НОВОСТИ
🎬 Обзор нововведений PHP 8.3
⚠️ PHP 8.0 больше не получает обновления безопасности
🔹 Вышли PHP 8.1.26 and PHP 8.2.13
🎂 PHP Foundation исполнилось 2 года
🔹 Экосистема разработки в 2023 году
📣 RFC: Resource to object conversion
📣 RFC: Release cycle update
📣 RFC: Improve callbacks in ext/dom and ext/xsl
📣 RFC: Change how JIT is disabled by default
📣 RFC: Final anonymous classes
📣 RFC: Property Hooks
🔹 Представлен Laravel Pulse
🔹 Вышел Tinkerwell 4
🎬 Подробный гайд по Form Requests в Laravel
🎬 Разработка собственного драйвера Socialite
🔹 Вышли Symfony 6.4 и 7.0
🔹 Yii Database 1.2
🔹 Yii Widget 2.1
🔹 Yii Config 1.4
📄 СТАТЬИ
🔹 PSR и суффиксы для интерфейсов
🎬 ВИДЕО
🔹 RND PHP #6
🔹 Александр Макаров - «Следуй за мечтой»
🔹 LivePHP SPb Meetup #1
🎙 АУДИО
🔹 Сколько можно заработать на курсе по PHP?
—
Ещё больше новостей и ссылок в ноябрьском выпуске PHP Annotated от JetBrains 💜
PHP-дайджест в видео формате на канале CutCode 🎬
Please open Telegram to view this post
VIEW IN TELEGRAM