Да, это реально! Похоже, что начиная с WordPress 6.2 минимальная версия PHP, необходимая для WP, будет 7.2. Последнее изменение в этом аспекте программного обеспечения было сделано в мае 2019 года для WordPress 5.2.

Обновление не происходило раньше, потому что команда установила 5% в качестве максимального порога использования версии. Согласно этому билету, использование PHP 5.6, наконец, упало ниже этого уровня. Поскольку PHP не имеет версии 6, а версии 7.0 и 7.1 имеют еще более низкие показатели использования, минимальная версия будет увеличена до PHP 7.2. Цифры также доступны на Статистической странице WP.org.

По состоянию на 17 декабря 2022 года […]:

PHP 5.6 составляет 4,99% всех сайтов WordPress
PHP 7.0 составляет 2,68%
PHP 7.1 составляет 1,82%

https://core.trac.wordpress.org/ticket/57345

Временная шкала WordPress и PHP

Для повышения обратной совместимости WordPress придерживается строгой политики в отношении минимальных версий PHP. Например, финальная версия PHP 5.2 была выпущена в январе 2011 года, но WP поддерживала ее до 2019 года.

PHP 5.6 достиг своего конца жизни в декабре 2018 года, и сегодня, 4 года спустя, это по-прежнему минимальная необходимая версия для WordPress. Если изменения действительно произойдут, мы все еще будем позади: последняя версия PHP 7.2 была выпущена в ноябре 2020 года, два года назад.

Из любопытства, пока я пишу этот пост, самая старая версия, все еще получающая обновления, — это PHP 8.0, срок действия которой запланирован на ноябрь 2023 года. Последняя версия, 8.2, была выпущена в этом месяце и будет получать обновления безопасности до декабря. 2025.

Что версия PHP меняет для WordPress

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

Вы можете увидеть полный список функций, которые будут доступны по этим трем ссылкам: PHP 7.0, PHP 7.1 и PHP 7.2. Ниже вы можете увидеть лишь несколько примеров того, что мы получим, установив PHP 7.0 как минимум:

Объявления возвращаемого типа

Начиная с PHP 7.0 можно объявить тип, возвращаемый функцией или методом:

function example( array ...$arrays ): array {}

Хотя это распространено в некоторых других языках, объявления типов (для параметров и возврата) могут быть чем-то новым для некоторых.

Самым большим преимуществом этой функции является статический анализ кода: даже без выполнения кода можно определить, вызывается ли example(), не ожидая появления массива. В этом случае ошибка может быть обнаружена и исправлена ​​до выполнения любого другого теста.

В настоящее время в большинстве IDE эта функция уже встроена.

Нулевой оператор объединения (??)

Вместо того, чтобы писать

$username = isset( $_GET['user'] ) ? $_GET['user'] : 'nobody';

можно было бы написать его упрощенную версию:

$username = $_GET['user'] ?? 'nobody';

Оператор космического корабля (‹=›)

Обычно используемый для функций сравнения, этот оператор возвращает -1, 0 или 1 в зависимости от результата сравнения.

echo 1 <=> 1; // 0
echo 1 <=> 2; // -1
echo 2 <=> 1; // 1

Совместимость с PHP 8 и версии WordPress

Сохранение совместимости с таким широким диапазоном версий усложняет задачу. Совместимость с PHP 8 (8.0, 8.1 и 8.2) все еще находится в стадии бета-тестирования. Даст ли отказ от поддержки PHP 5.6 достаточно места, чтобы сосредоточиться на PHP 8.x? Будем надеяться!

А вы уже обновили версию своего PHP-сайта?