is_php_version_compatible()
Сравнивает переданную версию PHP с версией PHP, установленной на сервере.
Работает на основе функции version_compare() с условием >=
.
Смотрите также аналогичное сравнение версий WP: is_wp_version_compatible().
Основа для: validate_plugin_requirements()
1 раз — 0.000001 сек (скорость света) | 50000 раз — 0.02 сек (скорость света) | PHP 7.2.16, WP 5.2
Хуков нет.
Возвращает
true|false
. True - указанная версия PHP совместима или версия для проверки совместимости не указана ('', false и т.д.). false - указанная версия не совместима.
Использование
is_php_version_compatible( $required );
- $required(строка) (обязательный)
- Минимальная требуемая версия PHP.
Примеры
#1 Выведем сообщение об устаревшей версии PHP
Пусть мы написали плагин, который будет работать только на PHP v7 и выше. Тогда надо предусмотреть, чтобы основной код плагина не запускался, если версия на сервере пользователя ниже требуемой.
Допустим на сервере пользователя установлен PHP 5.6.11, тогда:
if ( is_php_version_compatible( '7.0.0' ) ) { require_once __DIR__ . '/main-file-plugin.php'; } else { add_action( 'admin_notices', 'admin_php_version__error' ); } function admin_php_version__error() { ?> <div class="notice notice-error"> <p>Вы используете старую версию PHP. Попросите администратора сервера её обновить!</p> </div> <?php }
Код выше неполный и показывает лишь принцип того, как должно работать уведомление.
#2 Примеры результатов проверки
phpversion(); // 7.2.10 is_php_version_compatible( '5' ); // true is_php_version_compatible( '5.3.0-dev' ); // true is_php_version_compatible( '5.6' ); // true is_php_version_compatible( '5.6.11' ); // true is_php_version_compatible( '7' ); // true is_php_version_compatible( '7.2' ); // true is_php_version_compatible( '7.2.09' ); // true is_php_version_compatible( '7.2.10' ); // true is_php_version_compatible( '7.2.11' ); // false is_php_version_compatible( '7.2.12' ); // false is_php_version_compatible( '7.3' ); // false is_php_version_compatible( '8' ); // false
Список изменений
С версии 5.2.0 | Введена. |
Код is_php_version_compatible() is php version compatible WP 6.7.1
function is_php_version_compatible( $required ) { return empty( $required ) || version_compare( PHP_VERSION, $required, '>=' ); }