
От точной версии PHP зависит совместимость веб-приложений, корректная работа фреймворков и безопасность сайта. Например, PHP 7.4 больше не поддерживается, а использование PHP 8.2 или 8.3 даёт доступ к актуальным улучшениям и исправлениям. Поэтому перед настройкой CMS или установкой модулей важно проверить, какая версия языка сейчас активна на сервере.
Проверка версии может выполняться разными способами: через консоль с помощью команды php -v, просмотром информации в системных пакетах или созданием простого скрипта на PHP с функцией phpinfo(). Дополнительно сведения часто можно найти в панели управления хостингом или в логах веб-сервера.
Знание точной версии позволяет определить, доступны ли современные функции, такие как enum или улучшенная типизация в PHP 8, и своевременно спланировать обновление. Игнорирование этого шага повышает риск ошибок при установке библиотек и снижает уровень безопасности приложения.
Проверка версии PHP через команду php -v в терминале

Команда php -v отображает установленную версию интерпретатора и сведения о сборке. Для запуска потребуется доступ к терминалу сервера или локальной машины с установленным PHP.
PHP 8.2.10 (cli) (built: Aug 31 2023 10:12:45) (NTS) Copyright (c) The PHP Group Zend Engine v4.2.10, Copyright (c) Zend Technologies
| Значение | |
|---|---|
| PHP 8.2.10 | Текущая версия интерпретатора |
| (cli) | Используется интерфейс командной строки |
| NTS/ZTS | Режим потокобезопасности (Non Thread Safe / Thread Safe) |
| Zend Engine | Версия движка PHP, используемого для выполнения кода |
Если команда не выполняется, проверьте, установлен ли PHP в системе и добавлен ли он в переменную окружения PATH. На серверах с несколькими версиями PHP может потребоваться запуск php7.4 -v, php8.1 -v или указание полного пути к бинарному файлу, например /usr/bin/php -v.
Создайте новый файл, например info.php, и поместите в него одну строку кода:
<?php phpinfo(); ?>
Загрузите файл в корневую директорию сайта и откройте его в браузере, указав путь http://домен/info.php. На странице отобразится подробная конфигурация PHP, где в первом блоке «PHP Version» будет указана текущая версия интерпретатора.
После проверки удалите файл с сервера, так как открытый доступ к phpinfo() раскрывает информацию о модулях, путях и настройках окружения, что может представлять угрозу безопасности.
Определение версии PHP через пакетный менеджер (apt, yum, dnf)

На серверах с Debian или Ubuntu удобнее всего проверить установленную версию PHP через apt. Для этого выполните:
apt list --installed | grep php
Команда отобразит все установленные пакеты, включая точную версию основного интерпретатора и расширений.
В CentOS 7 и старых системах используется yum. Узнать версию можно так:
yum list installed | grep php
На CentOS 8, Fedora и RHEL применяется dnf. Аналогичная команда:
dnf list installed | grep php
rpm -q php
Таким образом можно быстро проверить текущую версию PHP, не обращаясь к самому интерпретатору.
Проверка версии PHP в настройках панели управления хостинга
Большинство хостингов предоставляет доступ к выбору и контролю версии PHP через панель управления. Проверка выполняется по одинаковому принципу, но названия разделов могут отличаться.
- Войдите в панель управления (cPanel, ISPmanager, DirectAdmin или аналогичную).
- Найдите раздел, связанный с PHP. Чаще всего он называется «Select PHP Version», «PHP Settings» или «Версия PHP».
- В открывшемся окне будет указана активная версия PHP для конкретного сайта или всего аккаунта.
Некоторые панели позволяют назначить разные версии PHP для отдельных доменов. В этом случае список сайтов отображается в интерфейсе, и напротив каждого указан текущий вариант.
Если вы используете cPanel:
- Перейдите в «Software» → «Select PHP Version».
- В верхней части страницы отобразится текущая версия.
- При необходимости выберите другую из выпадающего списка и сохраните изменения.
В ISPmanager:
- Откройте раздел «Настройки веб-сервера».
- Перейдите к параметрам сайта и посмотрите выбранную версию PHP.
Эти действия позволяют проверить актуальную конфигурацию без использования скриптов и терминала.
Определение версии PHP через Apache или Nginx конфигурацию
В Apache версия PHP указывается в настройках модуля или обработчика. Для связки mod_php строка с LoadModule в файле httpd.conf или apache2.conf содержит путь к библиотеке, где название файла включает номер версии, например libphp8.1.so. Если используется PHP-FPM, обратите внимание на директиву ProxyPassMatch или SetHandler, где указывается сокет или порт пула, соответствующего определённой версии.
В Nginx версия PHP определяется через блок location, где настроен fastcgi_pass. Путь к сокету или порту содержит номер версии, например unix:/run/php/php7.4-fpm.sock или 127.0.0.1:9000 для пула PHP-FPM. Конкретный номер версии можно проверить в названии сокета или в конфигурационном файле пула, расположенном в /etc/php/[версия]/fpm/pool.d/.
Проверка этих конфигурационных файлов позволяет быстро определить, какая именно версия PHP подключена к веб-серверу, без необходимости выполнения PHP-скриптов.
Использование composer для отображения версии PHP

Composer предоставляет удобный способ проверки версии PHP, установленной на сервере. Для этого используется команда:
composer diagnose
Ещё один способ – выполнить:
composer show --platform
Здесь будут перечислены платформенные пакеты, включая php и его версию. Такой подход полезен при проверке требований зависимостей, так как Composer учитывает именно эту информацию при установке библиотек.
composer config -g platform.php
Команда выведет значение, установленное в конфигурации Composer. Если оно отсутствует, используется фактическая версия PHP на сервере.
Вопрос-ответ:
Как узнать версию PHP через консоль на сервере?
Самый простой способ — выполнить команду php -v. Она выведет номер установленной версии, дату сборки и информацию о дополнительных модулях. Если на сервере несколько версий PHP, то результат может зависеть от того, какая версия указана по умолчанию в PATH.
Можно ли определить версию PHP, если у меня нет доступа к консоли?
Да, в таком случае можно создать файл с кодом <?php phpinfo(); ?>, сохранить его на сервере и открыть через браузер. На экране появится подробная информация о настройках PHP, включая текущую версию. После проверки этот файл лучше удалить, чтобы никто посторонний не получил доступ к конфигурации.
Если на сервере несколько сайтов, как узнать, какую версию PHP использует каждый из них?
Версия PHP может отличаться в зависимости от настроек виртуального хоста или выбранного режима работы (например, через PHP-FPM или Apache модуль). Чтобы проверить, нужно выполнить phpinfo() именно в корне конкретного сайта. Таким образом можно убедиться, какая версия применяется именно для этого проекта.
Могу ли я узнать версию PHP через панель управления хостингом?
Да, многие панели, например cPanel, Plesk или ISPmanager, показывают текущую версию PHP в настройках домена или в разделе «PHP Settings». Там же часто можно переключаться между доступными версиями. Если раздела нет, можно уточнить информацию у техподдержки хостинга.
Чем отличается версия PHP, которую я вижу в консоли, от версии, которая работает через веб-сервер?
В консоли используется CLI-версия PHP, а при обращении через браузер — та, что подключена к веб-серверу. Иногда это разные сборки. Например, в терминале может быть одна версия, а для сайта используется более новая или наоборот. Поэтому важно проверять обе ситуации: php -v в консоли и phpinfo() через сайт.
Как можно узнать версию PHP через консоль, если есть доступ к серверу по SSH?
Если у вас есть SSH-доступ, проще всего выполнить команду `php -v`. Она выведет текущую версию PHP, а также дополнительные сведения — например, информацию о сборке, дате компиляции и используемом Zend Engine. Такой способ удобен, так как не требует редактирования файлов или настроек сайта.
Можно ли определить версию PHP без доступа к консоли, только средствами самого сайта?
Да, это возможно. Один из простых способов — создать тестовый файл с содержимым `` и открыть его в браузере. В результате отобразится подробная таблица с конфигурацией PHP, где в верхней части будет указана версия. Однако по соображениям безопасности такой файл лучше удалить сразу после проверки, чтобы посторонние не получили доступ к технической информации о сервере.
