- PVSM.RU - https://www.pvsm.ru -
Подборка свежих новостей и материалов из мира PHP.
В выпуске: Composer 2.2, Cycle 2.0, обновления актуальных веток PHP и другие релизы; конкурс с подведением итогов года; пачка интересных статей, инструменты, видео и другие новости сообщества.
Приятного чтения!
Этот дайджест подготовлен совместно с Insolita [1]. Если понравился выпуск, плюсаните пост, пожалуйста.
Давайте вместе вспомним, что главное и интересное произошло в мире PHP за последний год?
Напишите ваш вариант в комментарии к этому посту и среди всех написавших 30 декабря мы разыграем PHP слоника.
Также вы можете пройти опрос по итогам года в PHP-сообществе [2] — будет интересно посмотреть результаты и тоже есть шанс получить слоника в подарок.
Багфиксы для актуальных веток PHP, а в случае PHP 7.4 — это последнее регулярное обновление и с этого момента для ветки PHP 7.4 будут выходить только секьюрити релизы.
После 10 лет работы на PHP 5.3, в композере наконец-то подняли минимальную версию PHP — теперь это PHP 7.2.5.
Этот релиз композера выходит с пометкой LTS и будет поддерживаться как минимум до конца 2023.
В релизе значительно улучшена производительность и потребление памяти. Причем чем сложнее граф зависимостей, тем более заметны будут улучшения. На среднем сайта на Drupal 9 [7], например, установка пакетов проходит на 25% быстрее и потребляет на 80% меньше памяти.
Еще сделали более гибким флаг --ignore-platform-req
: например, можно игнорировать все расширения ext-*
, но оставить проверку версии PHP; или если указать флаг --ignore-platform-req=php+
, то это позволит установить пакет, требующий php: 8.0.*
на PHP 8.1, но не на PHP 7.4.
В частности, добавлены новые функции ReactAsyncasync и ReactAsyncawait:
async(function () {
$browser = new ReactHttpBrowser();
$valueA = await($browser->get('https://blog.wyrihaximus.net/'));
$valueB = await($browser->get('https://wyrihaximus.net/'));
$valueC = await($browser->get('https://github.com/wyrihaximus/'));
});
include()
можно сделать быстрее, чем file_get_contents()
, если подкрутить настройки Opcache.Подписывайтесь на Telegram-канал PHP Digest [52].
Этот дайджест подготовлен совместно с Insolita [1]. Если вам понравился выпуск, подпишитесь на Юлию в твиттере [1] и поставьте плюс в пост, пожалуйста.
Заметили ошибку или опечатку? Сообщите в личку хабра [53] или телеграм [54].
Прислать ссылку можно через форму [55] или просто напишите мне в телеграм [54].
Поиск ссылок по всем дайджестам [56]
← Предыдущий выпуск: PHP-Дайджест №217 [57]
Автор: Роман Пронский
Источник [58]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/php-2/370824
Ссылки в тексте:
[1] Insolita: https://twitter.com/DonnaInsolita
[2] опрос по итогам года в PHP-сообществе: https://phpsurvey.typeform.com/opros2021
[3] PHP 8.1.1: https://www.php.net/ChangeLog-8#8.1.1
[4] PHP 8.0.14: https://www.php.net/ChangeLog-8.php#8.0.14
[5] PHP 7.4.27: https://www.php.net/ChangeLog-7.php#7.4.27
[6] Composer 2.2: https://blog.packagist.com/composer-2-2/
[7] На среднем сайта на Drupal 9: https://github.com/composer/composer/pull/9261#issuecomment-998322065
[8] Cycle 2.0: https://spiralscout.com/blog/meet-cycle-2-0
[9] ertuo-php/ertuo: https://github.com/ertuo-php/ertuo
[10] бенчмаркам: http://kaloyan.info/writing/2021/12/22/ertuo-php-routing.html#benchmarking-ertuo
[11] symfony/routing: https://github.com/symfony/routing
[12] В статье: http://kaloyan.info/writing/2021/12/22/ertuo-php-routing.html
[13] aimeos/upscheme: https://github.com/aimeos/upscheme
[14] Roave/BetterReflection 5.0: https://github.com/Roave/BetterReflection/releases/tag/5.0.0
[15] SymfonyWorld 2021 Winter Edition. Обзор конференции: https://www.youtube.com/watch?v=b5W-yuiigHI
[16] Использование компонентов symfony/messenger и symfony/console в качестве независимых компонентов: https://habr.com/ru/post/596559/
[17] Организация тестов в проекте на Symfony: https://www.strangebuzz.com/en/blog/organizing-your-symfony-project-tests
[18] Ключевые концепции пакета Security в Symfony за 5 минут: https://alex-daubois.medium.com/symfonys-security-key-concepts-in-5-minutes-e18033c26b35
[19] spatie/laravel-health: https://github.com/spatie/laravel-health
[20] tonysm/turbo-laravel: https://github.com/tonysm/turbo-laravel
[21] hotwired/turbo: https://github.com/hotwired/turbo
[22] TheDragonCode/laravel-migration-actions: https://github.com/TheDragonCode/laravel-migration-actions
[23] Managing Laravel services: https://downing.tech/posts/managing-laravel-services
[24] Laravel Pseudo-Daemons: https://aaronfrancis.com/2020/laravel-pseudo-daemons
[25] Building a multi-room chat application with Laravel and Centrifugo: https://centrifugal.dev/blog/2021/12/14/laravel-multi-room-chat-tutorial
[26] Tinkerwell и Invoker: https://leonidchernenko.ru/tinkerwell-and-invoker/
[27] PHP8: новые фишки. Готовимся к laravel 9: https://www.youtube.com/watch?v=kaMhZ_6MIn4&t=84s
[28] Yii 1.1.25: https://www.yiiframework.com/news/419/yii-1-1-25-is-released
[29] yiisoft/user: https://github.com/yiisoft/user
[30] yiisoft/translator-extractor: https://github.com/yiisoft/translator-extractor
[31] yiisoft/config: https://github.com/yiisoft/config
[32] yiisoft/yii-swagger: https://github.com/yiisoft/yii-swagger
[33] yiisoft/widget: https://github.com/yiisoft/widget
[34] Trying out PHP after 7 years: https://www.kode-krunch.com/2021/12/trying-out-php-after-7-years.html
[35] История разработки фасетного поиска средствами PHP : https://habr.com/ru/post/595765/
[36] Зависимости для сущностей и команд: https://elisdn.ru/blog/150/entity-dependencies
[37] Дмитрия Елисеева: https://twitter.com/elisdnru
[38] Heaps explained in PHP: https://doeken.org/blog/heaps-explained-in-php
[39] Implementation of Chain of Responsibility Design Pattern in PHP: https://orangesoft.co/blog/chain-of-responsibility-design-pattern-in-php
[40] async & await at the edge with ReactPHP: https://blog.wyrihaximus.net/2021/12/async-and-await-at-the-edge-with-reactphp/
[41] PHP Benchmark: include() vs file_get_contents(): https://konstantin.blog/2021/php-benchmark-include-vs-file_get_contents/
[42] Where does my validation live?: https://blog.frankdejonge.nl/where-does-validation-live/
[43] thephpleague/flysystem: https://github.com/thephpleague/flysystem
[44] DDD в PHP на примере холодильника, пиццы / Tech Lead Борис Беньковский: https://www.youtube.com/watch?v=rkQ3-T82pkU
[45] PHP Internals News: https://phpinternals.news/96
[46] [RFC] User Defined Operator Overloads: https://wiki.php.net/rfc/user_defined_operator_overloads
[47] Voices of the ElePHPant Ep#366: https://voicesoftheelephpant.com/2021/12/17/interview-with-the-php-foundation/
[48] PHP Foundation: https://opencollective.com/phpfoundation
[49] Grinding to $1,000,000 in revenue over 6 years: https://jasonmccreary.me/articles/grinding-to-million-dollar-revenue-saas/
[50] Laravel Shift: https://laravelshift.com/
[51] Стоит ли учить PHP в 2022 году?: https://habr.com/ru/post/596841/
[52] PHP Digest: https://t.me/phpdigest
[53] личку хабра: https://habrahabr.ru/conversations/pronskiy/
[54] телеграм: https://t.me/pronskiy
[55] через форму: https://bit.ly/php-digest-add-link
[56] Поиск ссылок по всем дайджестам: https://pronskiy.com/php-digest/
[57] Предыдущий выпуск: PHP-Дайджест №217: https://habr.com/ru/post/595309/
[58] Источник: https://habr.com/ru/post/598189/?utm_source=habrahabr&utm_medium=rss&utm_campaign=598189
Нажмите здесь для печати.