Статистика версий PHP - выпуск 2022.1
Первая ежегодная статистика 2022 используемых версий PHP от Packagist
Прошло 6 месяцев с момента предыдущего поста, и за это время был выпущен PHP 8.1 . Будет интересно увидеть некоторые цифры и в этой новейшей версии
Важно отметить, что вся статистика открыта и все диаграммы доступны любому пользователю по ссылку https://packagist.org/php-statistics .
Статистика использования
Начнем с необработанных цифр: процент используемых версий PHP сегодня и шесть месяцев назад.
Версия | июль 2021 г. (%) | Январь 2022 г. (%) |
8.1 | 0,1 | 9,1 |
8.0 | 14,7 | 23,9 |
7.4 | 46,8 | 43,9 |
7.3 | 19,2 | 12 |
7.2 | 10,4 | 6,6 |
7.1 | 3,8 | 2,4 |
7.0 | 1,3 | 0,8 |
Можно заметить, что сюда не входят версии, использование которых не превышает 1%. Визуализация этих данных выглядит примерно так:
Приятно видеть, что PHP 8.1 используется почти в 10% всех установок композера всего через месяц после его выпуска. Имеет смысл, что его легче подобрать для проектов, уже использующих PHP 8.0, поскольку довольно легко перейти с PHP 8.0 на PHP 8.1.
Так радостно видеть рост PHP 8.0, хотя на PHP 8.0 и 8.1 вместе приходится только одна треть всех установок. Это означает, что две из трех установок композера используют версии PHP, которые больше не поддерживаются активно.
Переходя к обзорной диаграмме за все время, вы можете увидеть эволюцию использования версий с течением времени.
Несмотря на то, что PHP 7.4 начинает свой спад, ясно, что ему еще есть куда двигаться. Будем надеяться, что через шесть месяцев мы увидим более резкое снижение.
Требуемые версии
Еще одна интересная метрика — минимальная требуемая версия пакетов. Если использовать популярный анализатор пакетов Никиты Попова, чтобы загрузить 1000 самых популярных пакетов, и написать небольшой скрипт, чтобы получить самую низкую версию, которую они поддерживают, из их файлов composer.json, то получатся такие данные:
Версия | июль 2021 г. | январь 2022 г. |
8.0 | 117 | 160 |
7.4 | 56 | 69 |
7.3 | 133 | 116 |
7.2 | 142 | 133 |
7.1 | 182 | 190 |
7.0 | 31 | 29 |
5.6 | 61 | 49 |
5.5 | 43 | 42 |
5.4 | 41 | 43 |
5.3 | 97 | 83 |
5.2 | 12 | 10 |
5.0 | 2 | 2 |
Для визуалов вот те же данные, визуализированные в виде диаграммы:
Вы можете быть удивлены, не увидев здесь PHP 8.1, но имейте в виду, что эти данные показывают минимальную требуемую версию. Это не означает, что ни один пакет не поддерживает PHP 8.1, это означает, что они также поддерживают PHP 8.0 или более ранние версии. Это имеет большой смысл, учитывая, что PHP 8.1 был выпущен чуть больше месяца назад.
Итак, в заключение: я вижу те же тенденции, что и в предыдущие годы, когда большинство установок композера все еще используют устаревшие версии. Я знаю, что у многих есть веские причины, почему они не могут или не хотят обновляться, но я также считаю, что быть в курсе современного PHP никогда не было так легко, как сегодня. Потратить пару часов или дней в году на поддержание работоспособности и актуальности вашей кодовой базы не должно быть проблемой ни для кого.
А Вы уже используете PHP 8.1?)
Что думаешь?