Статистика версий PHP: Январь, 2025
Предыдущий выпуск можно прочитать в статье «Статистика версий PHP: Июль, 2024», но в эту статью я также включу исторические данные.
Как всегда, я работаю с имеющимися данными: эти диаграммы не являются 100% точным представлением PHP сообщества в целом, но они точно отражают одну из наиболее заметных частей PHP — экосистему packagist.
Давайте посмотрим, что изменилось за последние шесть месяцев, а также проверим, как обстоят дела с PHP 8.4 спустя месяц после его выхода.
Статистика использования PHP
Для начала рассмотрим процентное соотношение используемых сегодня версий PHP. Я опустил все версии, используемые не более чем на 1%:
Версия | 2023-07 | 2024-01 | 2024-07 | 2024-07 |
---|---|---|---|---|
7.2 | 4.3% | 2.5% | 2.0% | 1.6% |
7.3 | 4.2% | 3.2% | 1.9% | 1.5% |
7.4 | 19.9% | 13.6% | 10.2% | 7.6% |
8.0 | 12.3% | 7.2% | 5.4% | 3.4% |
8.1 | 39.3% | 35.2% | 26.1% | 18.1% |
8.2 | 17.2% | 29.4% | 32.3% | 28.6% |
8.3 | 0.2% | 6.4% | 19.9% | 32.7% |
8.4 | 0.0% | 0.0% | 0.0% | 5.1% |
Визуализация этих данных выглядит так:
Начиная с PHP 8.1, я начал делать эти посты в январе и июле. Я намеренно выбрал эти месяцы, потому что к январю новейшему релизу PHP уже около месяца, и мне кажется интересным, сколько среди них ранних последователей. Поэтому давайте сравним использование PHP 8.1 за первый месяц:
Версия | Использование за первый месяц |
---|---|
8.1 | 9.1% |
8.2 | 4.7% |
8.3 | 6.4% |
8.4 | 5.1% |
PHP 8.4 демонстрирует не самые лучшие, но и не самые худшие результаты. Логично, что релиз PHP *.1
быстрее внедряется, так как он обычно устраняет все недостатки предыдущего релиза *.0
. Я немного удивлён тем, что 8.3
занял второе место: это был довольно скучный релиз, в то время как 8.4
содержит гораздо больше интересных новых возможностей. С другой стороны, скука может быть причиной того, что люди быстрее обновляются.
Наконец, давайте соберём все данные в один большой график, начинающийся с PHP 5.3 в 2013 году:
Требуемые версии PHP
Помимо данных Packagist, я также использую анализатор популярных пакетов Никиты Попова, загружающий 1000 самых популярных пакетов композитора. Я использую скрипт для сканирования этих пакетов и определения их минимальной требуемой версии PHP. Вот результаты:
Версия | 2023-07 | 2024-01 | 2024-07 | 2025-01 |
---|---|---|---|---|
5.2 | 7 | 7 | 5 | 5 |
5.3 | 65 | 58 | 50 | 52 |
5.4 | 31 | 28 | 26 | 26 |
5.5 | 21 | 16 | 15 | 15 |
5.6 | 32 | 30 | 29 | 31 |
7.0 | 24 | 24 | 24 | 25 |
7.1 | 125 | 100 | 93 | 101 |
7.2 | 133 | 123 | 118 | 123 |
7.3 | 56 | 49 | 42 | 45 |
7.4 | 97 | 87 | 80 | 81 |
8.0 | 144 | 126 | 123 | 128 |
8.1 | 107 | 154 | 184 | 194 |
8.2 | 94 | 135 | 153 | 171 |
8.3 | — | 0 | 4 | 4 |
8.4 | — | — | — | 0 |
Следует сделать два важных замечания.
- В таблице указана минимальная требуемая версия PHP. Это означает, что пакеты с минимальной версией PHP, например, 8.0, могут также поддерживать PHP 8.1, PHP 8.2, PHP 8.3 и PHP 8.4.
- Если посчитать цифры, то можно заметить, что между каждым годом есть некоторые различия. Не в каждом пакете указана корректная строка версии.
Проще всего представить эти данные в виде графика для относительного сравнения, чтобы можно было увидеть изменения с течением времени:
Похоже, что темпы внедрения новых версий PHP замедлились, хотя не стоит забывать, что это не обязательно плохо: пакеты, требующие php: ^8.0
, будут автоматически поддерживать и PHP 8.4.
С другой стороны (этот аргумент я приводил уже много раз): Я считаю, что PHP сообщество только выиграет, если разработчики открытого исходного кода будут больше стремиться к обновлению новейших версий PHP. Сейчас наступило время, когда обновление стало как никогда простым благодаря таким инструментам автоматизации, как Rector; и поддержание проектов в актуальном состоянии на последней версии PHP только выигрывает (безопасность, производительность и новые возможности).
Я очень рад выходу PHP 8.4. Это один из самых значимых релизов в новейшей истории PHP, и мне нравится его использовать!