PHP Дайджест № 215 (1 – 15 ноября 2021)
Вышел последний релиз кандидат PHP 8.1 перед финальным релизом; доступны бенчмарки PHP 8.1; в PHP 8.2 планируется задепрекейтить динамические свойства — добро или зло?; про перенос багов с bugs.php.net на GitHub; немного обновлен PSR-16.
Также в выпуске полезные статьи, видео и другие новости сообщества
https://habr.com/ru/post/589229/
Вышел последний релиз кандидат PHP 8.1 перед финальным релизом; доступны бенчмарки PHP 8.1; в PHP 8.2 планируется задепрекейтить динамические свойства — добро или зло?; про перенос багов с bugs.php.net на GitHub; немного обновлен PSR-16.
Также в выпуске полезные статьи, видео и другие новости сообщества
https://habr.com/ru/post/589229/
Хабр
PHP Дайджест № 215 (1 – 15 ноября 2021)
Картинка: Gabriel Nunes . Подборка свежих новостей и материалов из мира PHP. В выпуске: последний релиз кандидат PHP 8.1 перед финальным релизом, бенчмарки PHP 8.1; в PHP 8.2 планируется...
PHP Дайджест № 215 (1 – 15 ноября 2021)
Вместе с Insolita пробуем новый формат дайджеста в телеграме. Напишите в комментариях как вам?
⚡️НОВОСТИ
🔹 PHP 8.1.0 RC 6
Вышел последний релиз кандидат, а значит PHP 8.1 выйдет уже меньше, чем через две недели.
▪️ Интересный обзор новых фич PHP 8.1 сделал Mohamed Said (Core Laravel): 📺 Getting Ready for PHP 8.1
▪️ Brent Roose: PHP 8.1 в 8 блоках кода
Кроме прочего, в PHP 8.1 сделано много улучшений по производительности. Судя по результатам свежих бенчмарков от одного из core PHP разработчиков, Symfony demo приложение работает на ~30% быстрее, чем на PHP 8.0.
🔹 [RFC] Migrating to Github Issues
Предлагается перенести баги со старой системы bugs.php.net на GitHub в репозиторий php/php-src. Это касается всех багов, кроме секьюрити-проблем, которые не должны быть публичными.
В тестовом репозитории настроены шаблоны для баг-репортов запросов на фичи. Можно создать и посмотреть, как это будет выглядеть.
🔹 [RFC] Deprecate dynamic properties
На голосовании RFC с предложением задепрекейтить и впоследствии убрать динамические (необъявленные) свойства.
Кроме того, в последней версии RFC добавлен еще атрибут
Предложение вызвало волну споров в твиттере. Вот пример треда с недовольными таким подходом. Это изменение обратной совместимости и потребуется обновлять много кода, да и вообще ломает динамическую сущность PHP — говорят они.
🔹 Обновлен PSR-16: Common Interface for Caching Libraries
Для пакета php-fig/simple-cache выпущены две новые версии. В 2.0.0 добавлены типы для аргументов, а в 3.0.0 — типы возвращаемых значений.
🔹 Локальная root-уязвимость в PHP-FPM
Уязвимость позволяет пользователю с низкими привилегиями (например, www-data) повысить свои привилегии до уровня root, используя ошибку в PHP-FPM. Хоть это серьезная проблема, но не RCE. То есть злоумышленнику сначала надо будет использовать другие техники, чтоб завладеть рабочим процессом PHP. По ссылке подробный разбор от исследователей.
Уязвимость исправлена в поддерживаемых ветках PHP 7.4.25 и PHP 8.0.12 и PHP 7.3.32.
🔸 PHPStan 1.0 — После шести лет разработки состоялся первый стабильный релиз статического анализатора. В релизе новый уровень проверки «9» и другие улучшения.
Есть свежее интервью с автором 📺 PHPStan: PHP Release Radar — Episode 13
📝 СТАТЬИ
🔸 Как ManyChat на PHP8 переезжал
🔸 Перевод аудио-сообщений в текст в telegram при помощи Wit
🔸 Сравнение php-fpm, nginx-unit и laravel-octane
🔸 Эволюция PHP-объектов
🔸 Современное шифрование в PHP с помощью библиотеки libsodium
🔸 Type variance in PHP — Никита Попов об особенностях системы типов в PHP.
🔸 Интересный трюк от Larry Garfield с ридонли свойствами в PHP 8.1.
—————
👉 В полном дайджесте на Хабре более подробно про эти новости, а также ссылки по фреймворкам.
Вместе с Insolita пробуем новый формат дайджеста в телеграме. Напишите в комментариях как вам?
⚡️НОВОСТИ
🔹 PHP 8.1.0 RC 6
Вышел последний релиз кандидат, а значит PHP 8.1 выйдет уже меньше, чем через две недели.
▪️ Интересный обзор новых фич PHP 8.1 сделал Mohamed Said (Core Laravel): 📺 Getting Ready for PHP 8.1
▪️ Brent Roose: PHP 8.1 в 8 блоках кода
Кроме прочего, в PHP 8.1 сделано много улучшений по производительности. Судя по результатам свежих бенчмарков от одного из core PHP разработчиков, Symfony demo приложение работает на ~30% быстрее, чем на PHP 8.0.
🔹 [RFC] Migrating to Github Issues
Предлагается перенести баги со старой системы bugs.php.net на GitHub в репозиторий php/php-src. Это касается всех багов, кроме секьюрити-проблем, которые не должны быть публичными.
В тестовом репозитории настроены шаблоны для баг-репортов запросов на фичи. Можно создать и посмотреть, как это будет выглядеть.
🔹 [RFC] Deprecate dynamic properties
На голосовании RFC с предложением задепрекейтить и впоследствии убрать динамические (необъявленные) свойства.
class User {Это изменение не будет касаться класса
public $name;
}
$user = new User;
// Assigns declared property User::$name.
$user->name = «foo»;
// Oops, a typo:
$user->nane = «foo»;
// PHP <= 8.1: Молча создает динамическое свойство $user->nane.
// PHP 8.2: Вызывает предупреждение, но все равно создает динамическое свойство.
// PHP 9.0: Выбрасывает исключение Error.
stdClass
и унаследованных от него. А также не касается классов с магическими __get/__set
.Кроме того, в последней версии RFC добавлен еще атрибут
#[AllowDynamicProperties]
. Его можно навесить на любой класс и в этом классе продолжат работать динамические свойства.Предложение вызвало волну споров в твиттере. Вот пример треда с недовольными таким подходом. Это изменение обратной совместимости и потребуется обновлять много кода, да и вообще ломает динамическую сущность PHP — говорят они.
🔹 Обновлен PSR-16: Common Interface for Caching Libraries
Для пакета php-fig/simple-cache выпущены две новые версии. В 2.0.0 добавлены типы для аргументов, а в 3.0.0 — типы возвращаемых значений.
🔹 Локальная root-уязвимость в PHP-FPM
Уязвимость позволяет пользователю с низкими привилегиями (например, www-data) повысить свои привилегии до уровня root, используя ошибку в PHP-FPM. Хоть это серьезная проблема, но не RCE. То есть злоумышленнику сначала надо будет использовать другие техники, чтоб завладеть рабочим процессом PHP. По ссылке подробный разбор от исследователей.
Уязвимость исправлена в поддерживаемых ветках PHP 7.4.25 и PHP 8.0.12 и PHP 7.3.32.
🔸 PHPStan 1.0 — После шести лет разработки состоялся первый стабильный релиз статического анализатора. В релизе новый уровень проверки «9» и другие улучшения.
Есть свежее интервью с автором 📺 PHPStan: PHP Release Radar — Episode 13
📝 СТАТЬИ
🔸 Как ManyChat на PHP8 переезжал
🔸 Перевод аудио-сообщений в текст в telegram при помощи Wit
🔸 Сравнение php-fpm, nginx-unit и laravel-octane
🔸 Эволюция PHP-объектов
🔸 Современное шифрование в PHP с помощью библиотеки libsodium
🔸 Type variance in PHP — Никита Попов об особенностях системы типов в PHP.
🔸 Интересный трюк от Larry Garfield с ридонли свойствами в PHP 8.1.
—————
👉 В полном дайджесте на Хабре более подробно про эти новости, а также ссылки по фреймворкам.
JetBrains и другие компании инициировали создание фонда PHP
https://blog.jetbrains.com/phpstorm/2021/11/the-php-foundation/
Никита Попов, кроме PHP, долгое время контрибьютил в LLVM и Rust. И теперь решил переключить свою профессиональную деятельность на LLVM. Он все еще будет частью PHP-сообщества, но контрибьютить будет значительно меньше.
Это подтолкнуло на создание фонда PHP, цель которого — обеспечить развитие языка.
JetBrains, Automattic, Acquia, Laravel, Private Packagist, Symfony, Zend, Craft CMS, Tideways и PrestaShop объединили усилия и стали основателями и первыми финансовыми спонсорами фонда.
Первичная цель фонда — нанять part-time или full-time core разработчиков для работы на PHP.
Поддержать фонд донатом можно по ссылке:
https://opencollective.com/phpfoundation
https://blog.jetbrains.com/phpstorm/2021/11/the-php-foundation/
Никита Попов, кроме PHP, долгое время контрибьютил в LLVM и Rust. И теперь решил переключить свою профессиональную деятельность на LLVM. Он все еще будет частью PHP-сообщества, но контрибьютить будет значительно меньше.
Это подтолкнуло на создание фонда PHP, цель которого — обеспечить развитие языка.
JetBrains, Automattic, Acquia, Laravel, Private Packagist, Symfony, Zend, Craft CMS, Tideways и PrestaShop объединили усилия и стали основателями и первыми финансовыми спонсорами фонда.
Первичная цель фонда — нанять part-time или full-time core разработчиков для работы на PHP.
Поддержать фонд донатом можно по ссылке:
https://opencollective.com/phpfoundation
The JetBrains Blog
The New Life of PHP – The PHP Foundation | The PhpStorm Blog
During PHP’s 26-year history, the language has been actively developed by a huge number of people, such as Rasmus Lerdorf, Zeev Suraski, Andi Gutmans, Nikita Popov, and many, many others. In 2021, PHP
Релиз PHP 8.1, запуск PHP Foundation и истории переезда на 8.0
Стрим закончился, доступна запись. Скоро будут таймкоды.
https://www.youtube.com/watch?v=5D337gaVPa4
Стрим закончился, доступна запись. Скоро будут таймкоды.
https://www.youtube.com/watch?v=5D337gaVPa4
YouTube
Релиз PHP 8.1, запуск PHP Foundation и истории переезда на 8.0
Обсудим апдейты нового релиза и новость о создании PHP Foundation — фонда в поддержку языка. А еще послушаем, как ребята из 4 компаний проекты на 8.0 перевозили: с чем столкнулись и что советуют.
https://opencollective.com/phpfoundation — о том, как поддержать…
https://opencollective.com/phpfoundation — о том, как поддержать…
Вышел PHP 8.1 🎉
https://www.php.net/releases/8.1/ru.php
Основные новые возможности:
🔹 Enums они же перечисления;
🔹 Readonly свойства;
🔹 First-class callable — получение ссылки на любую функцию;
🔹 Оператор
🔹 Файберы;
🔹 Новый тип
🔹 Запись восьмеричных чисел с префиксом
🔹 Оператор
🔹 Много улучшений по производительности
(+23% к скорости на демо приложении Symfony)
В релизе также много депрекейшнов, улучшений консистентности и обработки ошибок.
Основные депрекейшны:
🔺 Объявлено устаревшим неявное преобразование
🔺 Интерфейс
🔺 Ограничено использование
🔺 Объявлено устаревшим передача значения
🔺 Добавлены типы для возвращаемых значений встроенных классов (и новый атрибут
🔺 Продолжено удаление типа resource. Ресурсы file_info, imap FTP Connection, LDAP, PostgreSQL теперь будут объектами, соответственно
Еще почитать-посмотреть:
• Подробно: php.watch/versions/8.1
• Коротко в видео: What's New in PHP 8.1
• Валентин Удальцов: Лайв-кодинг-обзор PHP 8.1
• Максимально полный список изменений: php-8.1.0/UPGRADING
https://www.php.net/releases/8.1/ru.php
Основные новые возможности:
🔹 Enums они же перечисления;
🔹 Readonly свойства;
🔹 First-class callable — получение ссылки на любую функцию;
🔹 Оператор
new
в инициализаторах (и вложенные атрибуты);🔹 Файберы;
🔹 final
константы в классах;🔹 Новый тип
never
для (не)возвращаемых значений;🔹 Запись восьмеричных чисел с префиксом
0o
;🔹 Оператор
...
поддерживает массивы со строковыми ключами;🔹 Много улучшений по производительности
(+23% к скорости на демо приложении Symfony)
В релизе также много депрекейшнов, улучшений консистентности и обработки ошибок.
Основные депрекейшны:
🔺 Объявлено устаревшим неявное преобразование
float
в int
, где теряется дробная часть;🔺 Интерфейс
Serializable
объявлен устаревшим;🔺 Ограничено использование
$GLOBALS
;🔺 Объявлено устаревшим передача значения
null
в параметры встроенных функций, которые не nullable
;🔺 Добавлены типы для возвращаемых значений встроенных классов (и новый атрибут
#[ReturnTypeWillChange]
);🔺 Продолжено удаление типа resource. Ресурсы file_info, imap FTP Connection, LDAP, PostgreSQL теперь будут объектами, соответственно
finfo
, IMAP\Connection
, FTP\Connection
, PgSql\Connection
, PgSql\Result
.Еще почитать-посмотреть:
• Подробно: php.watch/versions/8.1
• Коротко в видео: What's New in PHP 8.1
• Валентин Удальцов: Лайв-кодинг-обзор PHP 8.1
• Максимально полный список изменений: php-8.1.0/UPGRADING
www.php.net
PHP 8.1 Released
PHP 8.1 — большое обновление языка PHP: перечисления, readonly-свойства, callback-функции как объекты первого класса, файберы, пересечение типов, улучшения производительности и многое другое.
PHP Дайджест № 216 (15 – 30 ноября 2021)
⚡️НОВОСТИ
🔹 Вышел PHP 8.1
Основные новые возможности:
-
-
- First-class callable — получение ссылки на любую функцию;
- Оператор
- Файберы;
-
- Новый тип
- Запись восьмеричных чисел с префиксом
- Оператор
Подробнее ⬆️
⚠️ Важно!
- Активная поддержка PHP 7.4 уже закончена, то есть будут только секьюрити фиксы в течение года.
- Поддержка PHP 7.3 будет полностью прекращена 6 декабря.
Обновляйтесь.
🔹 The New Life of PHP – The PHP Foundation
JetBrains совместно с компаниями Automattic (WordPress), Acquia (Drupal), Laravel, Private Packagist (Composer), Symfony, Zend, Craft CMS, Tideways и PrestaShop учредили некоммерческую организацию PHP Foundation, миссия которой — обеспечить долгосрочное развитие языка PHP.
Подробно об истории создания и работе фонда смотрите в записи стрима: Про PHP Foundation с Романом Пронским.
🔹[RFC] Deprecate dynamic properties
Несмотря на многочисленные споры, предложение принято с перевесом всего в два голоса 52:25!
Это значит, что в PHP 8.2 динамические (необъявленные) свойства будут объявлены устаревшими, а в PHP 9.0 они будут вовсе удалены.
Подробнее в PHP Дайджесте № 215.
🔹 Вышла Doctrine DBAL 3.2.0
Также обнаружена критическая SQL-инъекция в doctrine/dbal 3.0.0 — 3.1.3, стоит немедленно обновиться до 3.1.4 или новее.
🔹 Вышли Symfony 6.0, Symfony 5.4
Разница между ними в том, что Symfony 5.4 содержит устаревшие возможности и обратно совместим, а в Symfony 6.0 все deprecated удалены.
Что нового можно посмотреть тут symfony.com/blog/category/living-on-the-edge.
🔹[RFC] Readonly classes
Máté Kocsis предлагает для PHP 8.2 readonly классы. По сути, это просто класс в котором все свойства
📝 СТАТЬИ
🔸 Improve Symfony Tests Performance — Наиболее полный список практических советов для многократного уменьшения времени тестов от Макса Рафалко, автора Infection.
🔸 Шпаргалка по современному PHP.
🔸 A long way from Monolithic to Composable Architecture — Про изменение архитектуры Magento.
🔸 Настройка PHP-FPM — Полезная заметка на канале Beer::PHP 🍺.
🔸 Практики внедрения зависимостей — Мега-статья от Дмитрия Елисеева.
—————
👉 В полном дайджесте на Хабре более подробно про эти новости, а также инструменты, ссылки по фреймворкам.
Дайджест подготовлен совместно с Insolita.
🐘
⚡️НОВОСТИ
🔹 Вышел PHP 8.1
Основные новые возможности:
-
Enums
они же перечисления;-
Readonly
свойства;- First-class callable — получение ссылки на любую функцию;
- Оператор
new
в инициализаторах (и вложенные атрибуты);- Файберы;
-
final
константы в классах;- Новый тип
never
для (не)возвращаемых значений;- Запись восьмеричных чисел с префиксом
0o
;- Оператор
...
поддерживает массивы со строковыми ключами;Подробнее ⬆️
⚠️ Важно!
- Активная поддержка PHP 7.4 уже закончена, то есть будут только секьюрити фиксы в течение года.
- Поддержка PHP 7.3 будет полностью прекращена 6 декабря.
Обновляйтесь.
🔹 The New Life of PHP – The PHP Foundation
JetBrains совместно с компаниями Automattic (WordPress), Acquia (Drupal), Laravel, Private Packagist (Composer), Symfony, Zend, Craft CMS, Tideways и PrestaShop учредили некоммерческую организацию PHP Foundation, миссия которой — обеспечить долгосрочное развитие языка PHP.
Подробно об истории создания и работе фонда смотрите в записи стрима: Про PHP Foundation с Романом Пронским.
🔹[RFC] Deprecate dynamic properties
Несмотря на многочисленные споры, предложение принято с перевесом всего в два голоса 52:25!
Это значит, что в PHP 8.2 динамические (необъявленные) свойства будут объявлены устаревшими, а в PHP 9.0 они будут вовсе удалены.
Подробнее в PHP Дайджесте № 215.
🔹 Вышла Doctrine DBAL 3.2.0
Также обнаружена критическая SQL-инъекция в doctrine/dbal 3.0.0 — 3.1.3, стоит немедленно обновиться до 3.1.4 или новее.
🔹 Вышли Symfony 6.0, Symfony 5.4
Разница между ними в том, что Symfony 5.4 содержит устаревшие возможности и обратно совместим, а в Symfony 6.0 все deprecated удалены.
Что нового можно посмотреть тут symfony.com/blog/category/living-on-the-edge.
🔹[RFC] Readonly classes
Máté Kocsis предлагает для PHP 8.2 readonly классы. По сути, это просто класс в котором все свойства
readonly
и запрещены динамические свойства. То есть это небольшой синтаксический сахар для удобства.📝 СТАТЬИ
🔸 Improve Symfony Tests Performance — Наиболее полный список практических советов для многократного уменьшения времени тестов от Макса Рафалко, автора Infection.
🔸 Шпаргалка по современному PHP.
🔸 A long way from Monolithic to Composable Architecture — Про изменение архитектуры Magento.
🔸 Настройка PHP-FPM — Полезная заметка на канале Beer::PHP 🍺.
🔸 Практики внедрения зависимостей — Мега-статья от Дмитрия Елисеева.
—————
👉 В полном дайджесте на Хабре более подробно про эти новости, а также инструменты, ссылки по фреймворкам.
Дайджест подготовлен совместно с Insolita.
🐘
Хабр
PHP Дайджест № 216 (15 – 30 ноября 2021)
Подборка свежих новостей и материалов из мира PHP. В выпуске: вышел PHP 8.1, создана организация PHP Foundation с целью развития и поддержки PHP, критическая уязвимость в doctrine/dbal, в PHP 8.2...
Видео дайджест в новом формате
https://www.youtube.com/watch?v=6em31j_LrSo
Сделали дайджест новостей по PHP и Laravel совместно с ребятами с канала CutCode. Как вам?
https://www.youtube.com/watch?v=6em31j_LrSo
Сделали дайджест новостей по PHP и Laravel совместно с ребятами с канала CutCode. Как вам?
YouTube
PHP и Laravel дайджест ноябрь 2021. Обзор новостей по ПХП и Ларавел
Итак, ноябрь закончился и пришло время сделать обзор новостей PHP и laravel за месяц! Сегодня у нас будет новый формат - рассказывать PHP дайджест будет настоящий специалист - Роман Пронский! Роман уже много лет ведет дайджест PHP на Хабре. А во второй части…
Вышел PhpStorm 2021.3
Очень мощный релиз:
🔹 Полная поддержка PHP 8.1.
🔹 Улучшена поддержка дженериков (особенно для doctrine/collections и eloquent/collections из Laravel 9).
🔹 Рефакторинг перемещения классов и неймспесов с помощью drag-and-drop.
🔹 Инструменты удаленной разработки.
🔹 Улучшения деплоймента и других подсистем.
На Хабре смотрите разбор всех-всех изменений и новых фич:
https://habr.com/ru/company/JetBrains/blog/594473/
Очень мощный релиз:
🔹 Полная поддержка PHP 8.1.
🔹 Улучшена поддержка дженериков (особенно для doctrine/collections и eloquent/collections из Laravel 9).
🔹 Рефакторинг перемещения классов и неймспесов с помощью drag-and-drop.
🔹 Инструменты удаленной разработки.
🔹 Улучшения деплоймента и других подсистем.
На Хабре смотрите разбор всех-всех изменений и новых фич:
https://habr.com/ru/company/JetBrains/blog/594473/
Хабр
Вышел PhpStorm 2021.3
В этом релизе мы полностью поддержали PHP 8.1, улучшили обработку дженериков, реализовали drag-and-drop для перемещения классов и пространств имен, обновили HTTP-клиент, повысили удобство процесса...
PHP Дайджест № 217 (1 – 13 декабря 2021)
⚡️НОВОСТИ
🔹 Баги PHP теперь на GitHub
Предложение мигрировать баги с bugs.php.net на GitHub принято практически единогласно.
Раздел github.com/php/php-src/issues уже открыт и можно видеть первые созданные баги.
🔹 Вышел PhpStorm 2021.3
Мажорное обновление IDE с кучей улучшений. Из основного:
▫️ Полная поддержка PHP 8.1.
▫️ Улучшена поддержка дженериков.
▫️ Рефакторинг перемещения классов и неймспейсов с помощью drag-and-drop.
▫️ Инструменты удаленной разработки.
▫️ Улучшения деплоймента и других подсистем.
Проверки PhpStorm можно запускать в CI благодаря Qodana for PHP — это отдельный инструмент от JetBrains, который работает на движке PhpStorm. Можно использовать, например, для поиска проблем совместимости с PHP 8.0 / 8.1.
🔹 Закончена поддержка PHP 7.3
Для PHP 7.4 активная поддержка тоже завершена, но еще в течение года будут выходить исправления проблем безопасности в случае их обнаружения.
phpreleases.com — API для получения информации о поддерживаемых версиях PHP.
🔹 [RFC] User Defined Operator Overloads
Снова на обсуждении предложение добавить перегрузку операторов в PHP. На этот раз довольно интересный хоть и спорный подход.
Раньше предлагалось для каждого оператора определить магический метод, например,
В текущей редакции RFC предлагается ввести новое ключевое слово operator. Оно используется вместо function и по сути делает то же самое, но позволяет использовать символы операторов вместо имен функций.
🔹 2022 PHP Landscape Report Survey
Ежегодный опрос PHP-сообщества от Zend.
Скоро будет запущен опрос русскоязычного сообщества от Алексея Корнеева и PHP-чатов/каналов, ну а пока можно заполнить опрос от Zend.
🔹 Начата работа над PSR стандартом для i18n
Задачи интернационализации и локализации встречаются повсеместно и иметь общий стандарт было бы отлично.
Пока сформирован мета-документ, в котором описаны цели и не-цели стандарта. А также собирается рабочая группа, в которую среди прочих вошел Александр Макаров.
🌀 РАЗНОЕ
🔸 Строим эффективный сетевой обмен в PHP-микросервисах.
🔸 Самые заметные изменения языка php за последние годы.
📺 PHP in 2021 — Новое видео от Brent Roose. Также в виде статьи.
📺 Запись BeerPHP SPb Meetup #3
—————
👉 В полном дайджесте на Хабре про другие новости, а также инструменты и ссылки по фреймворкам.
Дайджест подготовлен совместно с Insolita.
🐘
⚡️НОВОСТИ
🔹 Баги PHP теперь на GitHub
Предложение мигрировать баги с bugs.php.net на GitHub принято практически единогласно.
Раздел github.com/php/php-src/issues уже открыт и можно видеть первые созданные баги.
🔹 Вышел PhpStorm 2021.3
Мажорное обновление IDE с кучей улучшений. Из основного:
▫️ Полная поддержка PHP 8.1.
▫️ Улучшена поддержка дженериков.
▫️ Рефакторинг перемещения классов и неймспейсов с помощью drag-and-drop.
▫️ Инструменты удаленной разработки.
▫️ Улучшения деплоймента и других подсистем.
Проверки PhpStorm можно запускать в CI благодаря Qodana for PHP — это отдельный инструмент от JetBrains, который работает на движке PhpStorm. Можно использовать, например, для поиска проблем совместимости с PHP 8.0 / 8.1.
🔹 Закончена поддержка PHP 7.3
Для PHP 7.4 активная поддержка тоже завершена, но еще в течение года будут выходить исправления проблем безопасности в случае их обнаружения.
phpreleases.com — API для получения информации о поддерживаемых версиях PHP.
🔹 [RFC] User Defined Operator Overloads
Снова на обсуждении предложение добавить перегрузку операторов в PHP. На этот раз довольно интересный хоть и спорный подход.
Раньше предлагалось для каждого оператора определить магический метод, например,
__add()
для +
или __mul()
для *
.В текущей редакции RFC предлагается ввести новое ключевое слово operator. Оно используется вместо function и по сути делает то же самое, но позволяет использовать символы операторов вместо имен функций.
class Collection {Нужна ли в PHP перегрузка операторов? Есть ли применение в ваших приложениях?
// Ранее предлагалось вот так
function __add(Collection $other, OperandPosition $operandPos) {}
// А теперь вот так
operator +(Collection $other, OperandPosition $operandPos) {}
}
🔹 2022 PHP Landscape Report Survey
Ежегодный опрос PHP-сообщества от Zend.
Скоро будет запущен опрос русскоязычного сообщества от Алексея Корнеева и PHP-чатов/каналов, ну а пока можно заполнить опрос от Zend.
🔹 Начата работа над PSR стандартом для i18n
Задачи интернационализации и локализации встречаются повсеместно и иметь общий стандарт было бы отлично.
Пока сформирован мета-документ, в котором описаны цели и не-цели стандарта. А также собирается рабочая группа, в которую среди прочих вошел Александр Макаров.
🌀 РАЗНОЕ
🔸 Строим эффективный сетевой обмен в PHP-микросервисах.
🔸 Самые заметные изменения языка php за последние годы.
📺 PHP in 2021 — Новое видео от Brent Roose. Также в виде статьи.
📺 Запись BeerPHP SPb Meetup #3
—————
👉 В полном дайджесте на Хабре про другие новости, а также инструменты и ссылки по фреймворкам.
Дайджест подготовлен совместно с Insolita.
🐘
Хабр
PHP Дайджест № 217 (1 – 13 декабря 2021)
Подборка свежих новостей и материалов из мира PHP. В выпуске: PHP теперь использует GitHub для трекинга багов; вышел PhpStorm 2021.3; закончена поддержка PHP 7.3, а 7.4 — в режиме только секьюрити...
SymfonyWorld 2021 Winter Edition. Обзор конференции
Ребятки с YouTube-канала CutCode сделали классный обзор докладов с конференции по Symfony. Подпишитесь на них — скоро на канале выйдет новый видео PHP-дайджест.
https://www.youtube.com/watch?v=b5W-yuiigHI
Ребятки с YouTube-канала CutCode сделали классный обзор докладов с конференции по Symfony. Подпишитесь на них — скоро на канале выйдет новый видео PHP-дайджест.
https://www.youtube.com/watch?v=b5W-yuiigHI
YouTube
SymfonyWorld 2021 Winter Edition. Обзор конференции
Сегодня обзор недавно прошедшей конференции SymfonyWorld 2021 winter edition. Несмотря на то что канал у нас о Laravel, я решил обзор столь важного и близкого для Laravel комьюнити события не может пройти мимо нас. Обзор SymfonyWorld будет краткий, от спикера…
Опрос по итогам года в PHP-сообществе
https://phpsurvey.typeform.com/opros2021
Если вы еще не успели заполнить опрос, то вот несколько фактов о нем:
▫️ Помогали готовить опрос представители PHP-сообществ
▫️ По итогам прошлого года был стрим и подборка лучших ссылок
▫️ Опрос без регистрации, но если в конце оставить email, то есть шанс получить слоника и другие подарки
Пройти опрос 👉 https://phpsurvey.typeform.com/opros2021
https://phpsurvey.typeform.com/opros2021
Если вы еще не успели заполнить опрос, то вот несколько фактов о нем:
▫️ Помогали готовить опрос представители PHP-сообществ
▫️ По итогам прошлого года был стрим и подборка лучших ссылок
▫️ Опрос без регистрации, но если в конце оставить email, то есть шанс получить слоника и другие подарки
Пройти опрос 👉 https://phpsurvey.typeform.com/opros2021
Typeform
Discover Typeform, where forms = fun
Create a beautiful, interactive form in minutes with no code. Get started for free.
PHP Дайджест № 218 (13 – 27 декабря 2021)
Composer 2.2, Cycle 2.0, обновления актуальных веток PHP и другие релизы; конкурс с подведением итогов года; пачка интересных статей, инструменты, видео и другие новости сообщества.
https://habr.com/ru/post/598189/
Composer 2.2, Cycle 2.0, обновления актуальных веток PHP и другие релизы; конкурс с подведением итогов года; пачка интересных статей, инструменты, видео и другие новости сообщества.
https://habr.com/ru/post/598189/
Хабр
PHP Дайджест № 218 (13 – 27 декабря 2021)
Подборка свежих новостей и материалов из мира PHP. В выпуске: Composer 2.2, Cycle 2.0, обновления актуальных веток PHP и другие релизы; конкурс с подведением итогов года; пачка интересных статей,...
PHP и Laravel дайджест за декабрь + итоги года
Выложили свежий видеодайджест
https://youtu.be/fR4YoyHjFwk
Выложили свежий видеодайджест
https://youtu.be/fR4YoyHjFwk
YouTube
PHP и Laravel дайджест новостей за декабрь и итоги 2021 года. Обзор новостей по ПХП и Ларавел
2021 год подходит к концу и пришло время сделать обзор новостей PHP и laravel за декабрь! Мы продолжаем работать вместе с Романом Пронским - он расскажет PHP дайджест. А во второй части выпуска я расскажу о обновлениях laravel, которые появились в декабре.…
Видеодайджест новостей PHP и Laravel за январь 2022 года
Ребятки с канала CutCode выложили новый ролик
https://www.youtube.com/watch?v=KZC4b5MqSTg
Ребятки с канала CutCode выложили новый ролик
https://www.youtube.com/watch?v=KZC4b5MqSTg
YouTube
PHP и Laravel дайджест новостей за январь 2022 года. Обзор новостей по ПХП и Ларавел
Январь подходит к концу и пришло время сделать обзор новостей PHP и laravel! Мы продолжаем работать вместе с Романом Пронским - он расскажет PHP дайджест. А во
второй части выпуска я расскажу о обновлениях laravel, которые появились в январе.
Спикер по…
второй части выпуска я расскажу о обновлениях laravel, которые появились в январе.
Спикер по…
📺 Итоги года в PHP-сообществе
https://youtu.be/Nx39a7n9KIQv
А вот тут можно посмотреть список всех ссылок, упомянутых в опросе:
👉 https://habr.com/ru/company/skyeng/blog/648669/
https://youtu.be/Nx39a7n9KIQv
А вот тут можно посмотреть список всех ссылок, упомянутых в опросе:
👉 https://habr.com/ru/company/skyeng/blog/648669/
YouTube
Чем запомнился 2021 год русскоязычному PHP-сообществу — в 3000+ ответах
Подробнее https://phpcommunity.ru/2021-php
В PHP-сообществе прошел второй ежегодный опрос. Обсудим итоги в лайве: на какой версии сидит сообщество и многие ли переехали на восьмерку (или даже на 8.1), расклад по фреймворкам, главные события 2021, планы…
В PHP-сообществе прошел второй ежегодный опрос. Обсудим итоги в лайве: на какой версии сидит сообщество и многие ли переехали на восьмерку (или даже на 8.1), расклад по фреймворкам, главные события 2021, планы…
Forwarded from Пых (Валентин Удальцов)
🤝 PHP Foundation
С этого дня я ежемесячно перевожу $50 в фонд PHP.
PHP Foundation — это некоммерческая организация, миссия которой — обеспечить долгосрочное развитие PHP. Главный идеолог фонда — Роман Пронский, автор PHP Digest. Запуск проекта стал совместной инициативой JetBrains, Laravel, Symfony, Zend и других компаний.
На текущий момент фонд обработал заявки от разработчиков, которые хотят участвовать в разработке языка, и теперь решает юридические вопросы. Поэтому в графе расходов пока пусто — полноценная работа начнётся после согласования документов. Подробнее читайте в первом апдейте.
Больше о фонде:
• 216-ый выпуск PHP Дайджеста,
• стрим к выходу PHP 8.1,
• блог JetBrains,
• Twitter проекта.
https://opencollective.com/phpfoundation
С этого дня я ежемесячно перевожу $50 в фонд PHP.
PHP Foundation — это некоммерческая организация, миссия которой — обеспечить долгосрочное развитие PHP. Главный идеолог фонда — Роман Пронский, автор PHP Digest. Запуск проекта стал совместной инициативой JetBrains, Laravel, Symfony, Zend и других компаний.
На текущий момент фонд обработал заявки от разработчиков, которые хотят участвовать в разработке языка, и теперь решает юридические вопросы. Поэтому в графе расходов пока пусто — полноценная работа начнётся после согласования документов. Подробнее читайте в первом апдейте.
Больше о фонде:
• 216-ый выпуск PHP Дайджеста,
• стрим к выходу PHP 8.1,
• блог JetBrains,
• Twitter проекта.
https://opencollective.com/phpfoundation
PHP Дайджест № 222 (7 – 21 февраля 2022)
Основное из дайджеста в телеграм-формате:
⚡️НОВОСТИ
🔹 PHP 7.4.28, PHP 8.0.16, PHP 8.1.3
Обновления актуальных веток PHP с фиксом уязвимости в php_filter_float(), а в 8.0 и 8.1 еще с пачкой других фиксов.
Для PHP 7.3 обновления уже не выходят, даже если обнаружены проблемы безопасности. И хотя данной уязвимости PHP 7.3 не подвержена, тем не менее если вы все еще используете эту версию, то лучше запланировать обновление в ближайшее время.
🔹 Ubuntu 22.04 LTS выйдет с PHP 8.1
Очередной релиз популярного Linux дистрибутива выйдет 21 апреля с предустановленным PHP версии 8.1.
В связи с этим предлагается поднять минимальную версию PHP в следующем релизе Symfony 6.1. А для Drupal 10 это уже сделали.
🔹 PhpStorm 2022.1 EAP
Продолжается программа раннего доступа первого мажорного релиза IDE в этом году. Сделали поддержку многострочных и вложенных аннотаций array shape! Можно использовать как в виде
🔹 [RFC] Redacting parameters in back traces
На голосовании предложение добавить аттрибут
🔹 [RFC] Undefined Variable Error Promotion
Автор ранее предложил в PHP 9 перевести многие оставшиеся предупреждения (
Ну а начать решил с использования необъявленных переменных. Сейчас в этом случае бросается
🔹 [RFC] Allow null and false as stand-alone types
Предлагается добавить возможность использовать
Во-первых, это недостающие куски для полноты системы типов в PHP — есть
Во-вторых, такие типы позволят покрыть некоторые граничные случаи и улучшить статический анализ.
🔹 Вышел Laravel 9
Есть отличные обзоры:
📺 Короткий видеообзор на русском от CutCode
🇷🇺 9 интересных новшеств в Laravel 9 — В тексте
📺 Laracasts: What's New in Laravel 9 — Подробно на видео
🔹 Shopware получили $100 млн инвестиций от PayPal и Carlyle
Открытая е-commerce платформа на базе Symfony поднимает хорошие деньги, пока кто-то говорит, что PHP мертв. Ранее в 2020 $130 млн получили Spryker — другая e-com платформа на PHP.
Обе компании, кстати, поддерживают фонд PHP.
🌀 РАЗНОЕ
🔸 Brent Roose: Service locator: an anti-pattern
🔸 Как помочь с релизом Yii 3 — Статья Виктора Бабанова из core-команды Yii3 подробно рассказывает как помочь фреймворку кодом, даже если вы никогда раньше этого не делали.
🔸Пых: fromName для enum — Про методы fromName и tryFromName для получения перечисления любого типа по его имени ($name).
--
👉 Больше новостей и ссылок в полном дайджесте на Хабре, а также инструменты и ссылки по фреймворкам.
Дайджест подготовлен совместно с Insolita.
🐘
Основное из дайджеста в телеграм-формате:
⚡️НОВОСТИ
🔹 PHP 7.4.28, PHP 8.0.16, PHP 8.1.3
Обновления актуальных веток PHP с фиксом уязвимости в php_filter_float(), а в 8.0 и 8.1 еще с пачкой других фиксов.
Для PHP 7.3 обновления уже не выходят, даже если обнаружены проблемы безопасности. И хотя данной уязвимости PHP 7.3 не подвержена, тем не менее если вы все еще используете эту версию, то лучше запланировать обновление в ближайшее время.
🔹 Ubuntu 22.04 LTS выйдет с PHP 8.1
Очередной релиз популярного Linux дистрибутива выйдет 21 апреля с предустановленным PHP версии 8.1.
В связи с этим предлагается поднять минимальную версию PHP в следующем релизе Symfony 6.1. А для Drupal 10 это уже сделали.
🔹 PhpStorm 2022.1 EAP
Продолжается программа раннего доступа первого мажорного релиза IDE в этом году. Сделали поддержку многострочных и вложенных аннотаций array shape! Можно использовать как в виде
PHPDoc
, так и в виде атрибута #[ArrayShape]
.🔹 [RFC] Redacting parameters in back traces
На голосовании предложение добавить аттрибут
#[SensitiveParameter]
для предотвращения отображения конфиденциальныx данных в отладочных логах.🔹 [RFC] Undefined Variable Error Promotion
Автор ранее предложил в PHP 9 перевести многие оставшиеся предупреждения (
WARNING
) в полноценные исключения. Такое уже раньше делали в PHP 8.0.Ну а начать решил с использования необъявленных переменных. Сейчас в этом случае бросается
Warning
и используется значение null.🔹 [RFC] Allow null and false as stand-alone types
Предлагается добавить возможность использовать
null
и false
в декларациях типов.Во-первых, это недостающие куски для полноты системы типов в PHP — есть
mixed
, добавили never
, объединения и пересечения, не хватает юнит-типа.Во-вторых, такие типы позволят покрыть некоторые граничные случаи и улучшить статический анализ.
🔹 Вышел Laravel 9
Есть отличные обзоры:
📺 Короткий видеообзор на русском от CutCode
🇷🇺 9 интересных новшеств в Laravel 9 — В тексте
📺 Laracasts: What's New in Laravel 9 — Подробно на видео
🔹 Shopware получили $100 млн инвестиций от PayPal и Carlyle
Открытая е-commerce платформа на базе Symfony поднимает хорошие деньги, пока кто-то говорит, что PHP мертв. Ранее в 2020 $130 млн получили Spryker — другая e-com платформа на PHP.
Обе компании, кстати, поддерживают фонд PHP.
🌀 РАЗНОЕ
🔸 Brent Roose: Service locator: an anti-pattern
🔸 Как помочь с релизом Yii 3 — Статья Виктора Бабанова из core-команды Yii3 подробно рассказывает как помочь фреймворку кодом, даже если вы никогда раньше этого не делали.
🔸Пых: fromName для enum — Про методы fromName и tryFromName для получения перечисления любого типа по его имени ($name).
--
👉 Больше новостей и ссылок в полном дайджесте на Хабре, а также инструменты и ссылки по фреймворкам.
Дайджест подготовлен совместно с Insolita.
🐘
Хабр
PHP Дайджест № 222 (7 – 21 февраля 2022)
Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения! Этот дайджест подготовлен совместно с Insolita . Если понравился выпуск, плюсаните пост, пожалуйста. ⚡️️...