php -v: как узнать версию PHP в консоли и на сайте
Прозрачная ёмкость с перегородкой: слева жидкость почти до края, справа вдвое ниже, на ней лежит зелёный шарик

php -v: как узнать версию PHP в консоли и на сайте

Чтобы узнать версию PHP, выполните в терминале команду php -v. Разбираем вывод, альтернативы, работу на Windows, Linux и macOS и типичные ошибки.

php -v: как узнать версию PHP

Чтобы узнать версию PHP, откройте терминал и выполните команду php -v. Первая строка вывода покажет номер версии, например PHP 8.3.6 (cli).

php -v и php --version — одна и та же команда: короткий и длинный вариант флага.

Версия PHP определяет, какие функции доступны в коде, какие уязвимости остались открытыми и насколько быстро работает сайт. Поэтому команда php -v — первое, что запускают при настройке сервера, деплое проекта или диагностике ошибок. В статье разберём, как читать вывод, какие есть альтернативы, почему консоль и сайт иногда показывают разные версии и как этого избежать.

Что делает команда php -v

Команда `php -v` запускает интерпретатор PHP в режиме командной строки (CLI) и просит его сообщить о себе. Никакой код при этом не выполняется: вы просто получаете паспорт установленной сборки. Флаг `-v` — сокращение от `--version`, поэтому `php --version` даёт точно такой же результат.

Команда работает одинаково в Linux, macOS и Windows, будь то Bash, Zsh, PowerShell или классическая командная строка. Единственное условие: исполняемый файл `php` должен быть доступен через переменную окружения PATH. Если это не так, система ответит ошибкой, и сначала придётся разобраться с установкой.

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

terminal
$ php -v
PHP 8.3.6 (cli) (built: Apr 11 2024) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.6, Copyright (c) Zend Technologies
    with Zend OPcache v8.3.6, by Zend Technologies
  • 01
    PHP 8.3.6

    Мажорная, минорная и патч-версия. Именно эту строку сверяют с требованиями проекта.

  • 02
    (cli)

    Тип сборки. Для консоли это cli, для веб-сервера обычно fpm-fcgi или apache2handler.

  • 03
    NTS

    Non Thread Safe — потоконебезопасная сборка, стандарт для PHP-FPM.

  • 04
    Zend OPcache

    Расширение кеширования байт-кода. Его наличие ускоряет работу сайта.

Как проверить версию PHP на разных системах

  1. 01

    Откройте терминал: Ctrl+Alt+T на Linux, «Терминал» на macOS, PowerShell или командную строку на Windows.

  2. 02

    Введите php -v и нажмите Enter. Если видите строку вида PHP 8.x.x (cli), PHP установлен и доступен.

  3. 03

    Если система отвечает «command not found» или «не является внутренней или внешней командой», установите PHP: на Ubuntu и Debian — sudo apt install php-cli, на macOS — brew install php, на Windows — скачайте сборку и добавьте папку с php.exe в переменную Path.

  4. 04

    Если версий несколько, выясните, какой файл запускается: which php на Linux и macOS или where php на Windows.

  5. 05

    Для конкретной версии вызывайте её напрямую, например php8.2 -v на Debian и Ubuntu, и переключайте версию по умолчанию через sudo update-alternatives --config php.

  6. 06

    Работаете в контейнере? Выполните docker exec имя_контейнера php -v, чтобы проверить версию внутри Docker.

Другие способы узнать версию PHP

Команда `php -v` — самый быстрый, но не единственный способ. Если нужна только строка с номером, пригодится `php -r "echo PHP_VERSION;"`: она выведет, например, `8.3.6` без лишнего текста, что удобно для скриптов и CI. Команда `php -i` покажет полную конфигурацию, а в связке с поиском по строке `PHP Version` выдаст нужную строку.

Если доступа к консоли нет, например на виртуальном хостинге, создайте временный файл с кодом `<?php phpinfo();` или `<?php echo phpversion();`, откройте его в браузере и сразу после проверки удалите. Страница phpinfo() раскрывает много служебных данных, поэтому оставлять её на сервере опасно.

Также версию PHP показывают панели управления хостингом, например ISPmanager и cPanel: она указана в разделе настроек PHP или в свойствах сайта. Для проекта на Composer команда `composer show -p` выведет платформенные параметры, включая версию PHP и установленные расширения.

СпособГде работаетЧто покажет
php -vТерминалВерсию CLI, Zend, OPcache
php -r "echo PHP_VERSION;"Терминал, скрипты, CIТолько номер версии
php -iТерминалПолную конфигурацию CLI
phpinfo() в браузереСайт на веб-сервереВерсию и настройки веб-окружения
echo phpversion(); в кодеЛюбой PHP-скриптВерсию, в которой выполняется код
Панель хостингаБраузер, личный кабинетВерсию, выбранную для сайта

Почему консоль и сайт показывают разные версии

Самая частая путаница: в терминале `php -v` выдаёт 8.3, а сайт продолжает работать на 7.4. Это не баг, а следствие того, что в системе может быть несколько установок PHP. Консоль запускает тот файл, который первым найден в PATH, а веб-сервер работает через отдельный модуль или пул PHP-FPM со своей версией и своим файлом `php.ini`.

Поэтому для диагностики сайта ориентируйтесь на `phpinfo()` или `PHP_VERSION`, выполненные именно через веб-запрос. Строка `Server API` в `phpinfo()` подскажет, через какой интерфейс работает PHP, а `Loaded Configuration File` — какой конфигурационный файл читается. Версия из терминала полезна для консольных задач: миграций, cron-скриптов, Composer и Artisan.

cli · терминал

php -v

PHP 8.3

Берётся из PATH. Используется для Composer, cron и консольных команд фреймворка.

могут отличаться
fpm · веб-сервер

phpinfo() на сайте

PHP 7.4

Задаётся в настройках Nginx, Apache, пула PHP-FPM или панели хостинга.

Типичные ошибки при проверке версии PHP

Большинство проблем возникает не из-за самой команды, а из-за неверных выводов по её результату.

Как делать не стоит

  • Judge сайта по php -v: считать, что версия в терминале равна версии, на которой работает сайт.
  • Оставить на сервере файл с phpinfo() после проверки.
  • Обновить PHP на боевом сервере, не проверив плагины и расширения.
  • Игнорировать предупреждения об устаревшей версии, пока сайт «просто работает».

Как правильно

  1. 01

    Проверяйте версию отдельно для консоли и для веб-окружения.

  2. 02

    Удаляйте временные файлы с phpinfo() сразу после диагностики.

  3. 03

    Сначала тестируйте новую версию на копии сайта или в отдельном окружении.

  4. 04

    Следите за сроками поддержки и планируйте переход заранее.

Почему версия PHP важна для сайта

Версия PHP влияет на три вещи: безопасность, скорость и совместимость. Ветки, снятые с поддержки, не получают исправлений уязвимостей, и взлом сайта из-за известной дыры в устаревшем PHP — реальный сценарий. Новые версии, начиная с 8.0, быстрее обрабатывают запросы благодаря оптимизациям движка и JIT-компиляции, а значит, страницы отдаются быстрее.

Скорость ответа сервера напрямую связана с пользовательским опытом и поведением посетителей, а это учитывают и Яндекс, и Google при оценке качества сайта. Вы можете отслеживать время ответа и ошибки сервера в Яндекс Вебмастере и Google Search Console, а динамику поведения пользователей — в Яндекс Метрике и Google Analytics. Если после обновления PHP появились ошибки 5xx, они быстро проявятся в этих отчётах.

Что даёт регулярная проверка версии PHP

  1. 01

    Закрытые уязвимости: актуальная ветка получает патчи безопасности.

  2. 02

    Выше скорость: PHP 8.x заметно быстрее 7.x на типичных CMS-нагрузках.

  3. 03

    Совместимость: вы заранее узнаёте, что плагин или тема требуют другую версию.

  4. 04

    Предсказуемый деплой: одинаковая версия на локальной машине, тестовом и боевом серверах.

  5. 05

    Понятная диагностика: ошибки вроде «Call to undefined function» быстро связываются с версией.

checklist

Перед обновлением версии PHP

  1. 01

    Выполнитеphp -vи запишите текущую версию CLI.

  2. 02

    Откройтеphpinfo()на сайте и сверьте версию веб-окружения.

  3. 03

    Проверьте требования CMS, плагинов и библиотек к минимальной версии.

  4. 04

    Сделайте резервную копию файлов и базы данных.

  5. 05

    Протестируйте новую версию на копии сайта и посмотрите логи ошибок.

  6. 06

    Переключите версию на боевом сервере и проверьте ключевые страницы и формы.

Какую версию PHP выбрать

Ориентируйтесь на официальный график поддержки: версия считается безопасной, пока для неё выходят исправления уязвимостей. Ветки 7.4 и 8.0 уже сняты с поддержки, и держать на них рабочие проекты не стоит. Для новых сайтов разумно брать актуальную стабильную ветку, например 8.3 или новее, а для старых проектов планировать поэтапный переход.

Если CMS или плагины ещё не поддерживают новую версию, не откладывайте обновление бесконечно: найдите замену устаревшему расширению или попросите разработчика адаптировать код. Для проверки совместимости полезно запускать тестовую копию сайта с включённым выводом ошибок и смотреть, какие предупреждения о deprecated появляются в логах.

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

Итоги: что запомнить о php -v

php -v показывает версию PHP в консоли, но версию сайта нужно проверять отдельно — через phpinfo() или константу PHP_VERSION.
  1. 01

    Команда php -v (или php --version) выводит версию, тип сборки и подключённые расширения.

  2. 02

    Если команда не найдена, установите PHP и добавьте его в PATH.

  3. 03

    Для чистого номера версии используйте php -r "echo PHP_VERSION;".

  4. 04

    Версии CLI и веб-сервера могут отличаться — проверяйте обе.

  5. 05

    Используйте поддерживаемую ветку PHP и тестируйте обновление на копии сайта.

Регулярная проверка версии PHP занимает несколько секунд, но защищает от уязвимостей, ошибок совместимости и медленной работы сайта. Если вы не уверены, на какой версии работает ваш проект и готов ли он к обновлению, специалисты проведут аудит и подготовят безопасный переход.

Часто задаваемые вопросы

Закажите технический аудит сайта и версии PHP на сервере

Проверим версию PHP, совместимость плагинов и скорость ответа сервера, подготовим безопасный план обновления

Бесплатный аудитОтчёт за 24 часаБез навязчивых звонков

Проверяем сайты в Яндексе и Google

Политика конфиденциальности

При оставлении заявки на ресурсе «https://gurucontext.ru» пользователи предоставляют следующие сведения:

  • Имя
  • Контактный телефон или Telegram
  • Адрес сайта пользователя (не обязательно)

Также администрация сайта получает данные об IP-адресе посетителей, типе браузера, времени нахождения на сайте и прочие подобные сведения через сервисы статистики.

Использование информации

Вся полученная информация используется администрацией «https://gurucontext.ru» исключительно в целях связи с клиентом.

Защита персональных данных

Компания «https://gurucontext.ru» обязуется не разглашать сведения, полученные от пользователей, и хранит их в защищённом виде.

Предоставление данных третьим лицам

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

Контакты

Телефон: +7 (499) 955-47-00.
E-mail: info@gurucontext.ru.