Статистика версий PHP: Июнь 2025

Использование PHP в июне 2025 года

Добро пожаловать в новую статью, посвящённую использованию различных релизов PHP в сообществе. Предыдущую статью можно прочитать здесь, но в этой статье также будут представлены исторические данные.

Эти посты всегда начинаются с предупреждения: используются доступные данные. Поэтому эти графики не являются 100% точным отражением всего сообщества PHP, но они точно отражают одну из наиболее заметных частей PHP: экосистему packagist.

Давайте посмотрим, что изменилось за последние полгода, а также посмотрим, как PHP 8.4 внедряется через полгода после его релиза.

Статистика использования

Начнём с рассмотрения процентного соотношения релизов PHP, используемых в настоящее время. Я опустил все версии, доля использования которых не превышает 1%:

Версия2024-012024-072025-012025-06
7.22.5%2.0%1.6%1.6%
7.33.2%1.9%1.5%1.4%
7.413.6%10.2%7.6%6.9%
8.07.2%5.4%3.4%3.3%
8.135.2%26.1%18.1%13.4%
8.229.4%32.3%28.6%24.8%
8.36.4%19.9%32.7%34.0%
8.40.0%0.0%5.1%13.7%

Визуализация этих данных выглядит так:

Эволюция использования версий
Эволюция использования версий

Примечательно, что PHP 8.4 имеет несколько худший показатель внедрения по сравнению с предыдущими релизами: 13,6% через полгода:

ВерсияИспользование после 6 месяцев
8.015.0%
8.121.6%
8.215.6%
8.316.7%
8.413.7%

Почему PHP 8.4 внедряется медленнее, чем предыдущие релизы? Ведь PHP 8.4 — довольно интересная версия с такими функциями, как хуки свойств, new без скобок и асимметричная видимость. Возможно, это и отпугивает часть пользователей от PHP 8.4. Нововведений много, и они кажутся слишком резкими.

Во время обсуждения этого вопроса в прямом эфире участники упомянули, что отсутствие поддержки инструментов QA мешает им перейти на PHP 8.4. Действительно, PHP CS Fixer, например, всё ещё работает над поддержкой PHP 8.4, и это происходит довольно медленно. Также PHPStan потребовалось время, прежде чем была добавлена поддержка PHP 8.4.

Кроме того, есть пакеты с открытым исходным кодом, которые также могут быть фактором, хотя об этом поговорим подробнее ниже. Сначала объединим все исторические данные в один большой график, визуализирующий эволюцию использования PHP с течением времени:

Эволюция за всё время
Эволюция за всё время

Требуемые версии

Интересным моментом является анализ минимальной требуемой версии 1000 самых популярных пакетов на Packagist. Эти данные дают хорошее представление насколько PHP сообщество продвигает проекты вперёд. Об этих цифрах можно сказать многое.

Важно отметить, что я перешёл с популярного анализатора пакетов Никиты на новый анализатор packagist от Адриана. Этот инструмент работает гораздо быстрее и экономит много времени. Однако могут быть некоторые незначительные различия в анализе версий (т. е. скрипт, написанный на основе анализатора Никиты, мог содержать одну или две ошибки). Поэтому полагаю, что различия обусловлены этим изменением. Однако анализатор Адриана использует парсер версий composer, поэтому можно с уверенностью сказать, что новые цифры являются наиболее точными.

Версия PHP2024-012024-072025-012025-06
5.358505228
5.428262639
5.51615157
5.630293118
7.024242527
7.11009310171
7.212311812387
7.349424559
7.487808195
8.0126123128106
8.1154184194234
8.2135153171187
8.304426
8.400

Для относительного сравнения проще всего визуализировать эти данные в виде диаграммы, чтобы можно было увидеть их изменения во времени:

Минимальная требуемая версия с течением времени
Минимальная требуемая версия с течением времени

Однако выводы, остаются прежними: более 50% популярных PHP-пакетов поддерживают полностью устаревшие релизы интерпретатора, для которых больше не выпускаются обновления безопасности. На мой взгляд, сообщество PHP в целом выиграло бы, если бы пакеты более активно переходили на использование только поддерживаемых версий PHP.

Это сложная тема, которая подробно обсуждается в видео (на английском, но можно посмотреть с переводом на русский через яндекс браузер), рекомендую посмотреть, если интересно:

Смотреть видео на YouTube
Смотреть видео на VK

Это всё на сегодня. А вы уже перешли на PHP 8.4? Поделитесь опытом в комментариях!

Комментарии


Дополнительные материалы

Предыдущая Статья

Агрегатные функции SQL — примеры и использование