PHP Digest
Kanalga Telegram’da o‘tish
PHP Дайджест Новости, материалы и инструменты из мира PHP — раз в месяц. Вопросы, замечания, предложения: @pronskiy
Ko'proq ko'rsatish8 209
Obunachilar
-124 soatlar
-57 kunlar
-3830 kunlar
Postlar arxiv
8 208
PHP Дайджест № 198
Обновление стандартов PSR-6 и PSR-13, кеширование наследования в опкеш, аксессоры свойств и другие новости из PHP Internals, диалект Lisp компилируемый в PHP, а также инструменты, видео, подкасты и PHP Дайджест Live.
https://habr.com/ru/post/541300/
8 208
Голосование по енамам в PHP
https://wiki.php.net/rfc/enumerations#voting
Подробнее про предложение можно прочитать в дайджесте № 194. А пока давайте проведем свое альтернативное голосование.
8 208
PHP Дайджест № 197
Объекты в качестве ключей массивов и другие RFC предложения для PHP 8.1, запуск WebAssembly в PHP, о коллизиях в массивах, об обновлении на PHP 8.0, порция полезных инструментов, статьи, видео, PHP Дайджест Live в 20:00 МСК.
https://habr.com/ru/post/539034/
8 208
🤹
Решили с Ромой запустить юморной канал про PHP. Посмотрим, что из этого получится. Подписывайтесь, присылайте мемы и шутки 🤗
@isPHPdying
8 208
Стрим PHP Дайджест Live закончился, доступна запись
Обзор последних новостей из мира PHP, специальный гость и новый конкурс со слониками.
https://www.youtube.com/watch?v=DEV3K_Tf5Do
8 208
PHP Дайджест № 196
PHP 8.0.1, MySQL движок на PHP от Vimeo и другие релизы, обновленный Enum и свежие предложения для PHP 8.1, «уязвимость» в Laminas, инструменты, статьи, видео, PHP Дайджест Live в 20:00 МСК.
https://habr.com/ru/post/536726/
8 208
Итоги 2020 в PHP сообществе
Вместо подведения итогов в дайджесте, в этом году решили сделать опрос, чтобы вспомнить, что интересного было:
https://skyeng-school.typeform.com/to/iNfIjQbr
Выбираем фреймворк года, персону года, чат года и многое другое года. Результаты будут на Хабре и на phpcommunity.ru.
Картинка: https://vas3k.ru/blog/2020/
8 208
PHP Дайджест Стрим закончен. Запись доступна по ссылке, и комментарии открыты для участия в конкурсе.
https://www.youtube.com/watch?v=mvjj_YX_BqQ
8 208
PHP-Дайджест № 195
Fibers для асинхронного PHP, первые нативные атрибуты, короткий match и другие RFC предложения для PHP 8.1, инструменты, много видео, статьи, подкасты, cтрим PHP Дайджест Live.
https://habr.com/ru/post/535308/
8 208
Интересный факт из RFC трейтов
Трейты появились в PHP 5.4 в 2012 году. В то время в качестве альтернативы рассматривались "графты" (от англ. grafting — прививка деревьев).
https://wiki.php.net/rfc/horizontalreuse
В отличие от трейтов, графты — это полноценные классы. То есть можно было бы взять один класс и полностью внедрить в другой, при этом сохранив инкапсуляцию. Такая вот композиция на уровне языка могла быть.
8 208
Стрим: Трейты в PHP — зло? Валентин Удальцов против всех
https://www.youtube.com/watch?v=DEk56xbMITo
В эту среду наконец-то проясним, что не так с трейтами и можно ли использовать их правильно. Валентин ярый противник трейтов, и ему будут противостоять Кирилл Несмеянов, Сергей Жук, Иван Лещёв и Александр Дубовской.
Подробнее: https://habr.com/ru/company/skyeng/blog/534152/
8 208
Fibers — асинхронному PHP быть?
https://wiki.php.net/rfc/fibers
Мейнтенер Amphp опубликовал RFC по файберам и обновленное расширение с реализацией amphp/ext-fiber.
Проблема асинхронного кода в текущем виде с ReactPHP и Amp в том, что весь код должен быть асинхронным: либо нужно прокидывать
yield либо Promise по всей цепочке вызовов.
Файберы решают эту проблему. Это как генераторы, то есть можно прерывать выполнение функций, но файберы не загрязняют стек вызовов и не надо добавлять yield на каждом уровне.
Можно представить файбер как функцию, которая сама хранит в себе стек вызовов и которую можно остановить или продолжить в любой момент.
Предлагается добавить класс Fiber и интерфейс FiberScheduler. Последний это, по сути, ивент луп. Его реализация в PHP 8.1 не предлагается и остается в планах на будущее.
То есть глобально это пока не меняет картину асинхронного PHP: стандартная библиотека все равно блокирующая.
Зато появится официальный стандарт ивент лупа, а разработчики пакетов типа ReactPHP и Amp смогут писать асинхронные обертки проще и быстрее. И использовать их будет приятнее. В общем, хороший первый шаг в направлении.
Примеры тут: https://github.com/amphp/ext-fiber/tree/master/examples
Вероятность принятия: высокая.
______
Спасибо https://github.com/mmasiukevich за ревью текста.8 208
Первый PHP Дайджест Стрим
Upd: Cтрим закончился, со ссылкой вышел косяк, зато запись доступна вот тут
https://www.youtube.com/watch?v=i9iC58z0yHE
8 208
PHP-Дайджест № 194
Enum в PHP 8.1, удаление
Serializable и ограничение $GLOBALS, а также другие новости из PHP Internals, PhpStorm 2020.3, JetBrains Qodana, Symfony UX, порция полезных инструментов, видео, и первый PHP Дайджест Стрим.
https://habr.com/ru/post/532950/8 208
Релиз PhpStorm 2020.3
Из наиболее заметного в этом мажорном обновлении:
▪️ Поддержка PHP 8
▪️ Кастомные атрибуты PHP 8
▪️ PHPStan и Psalm
▪️ Xdebug 3
▪️ Tailwind CSS
▪️ Совместная разработка
Подробный разбор этих и всех других новых фич на русском:
https://habr.com/ru/company/JetBrains/blog/531828/
