6.15 Как получить информацию про PHP с помощью скрипта phpinfo
Скрипт phpinfo — это простой и удобный инструмент для получения полной информации о текущей установке PHP на сервере. Ниже мы рассмотрим пошаговый процесс его создания и использования.
Основные применения phpinfo
- Проверка версии PHP для совместимости приложений.
- Диагностика модулей и расширений — выяснить, установлены ли нужные библиотеки.
- Анализ конфигурации — выявить, какие настройки могут потребовать изменения.
- Отладка окружения — помощь в настройке и устранении неполадок.
Создание файла phpinfo.php
Для выполнения скрипта нам необходимо будет создать файл в формате .php
. Его название может быть произвольным, но чтобы лишний раз не путаться мы назовем его phpinfo.php
.
1. Подключитесь к вашему серверу через FTP или файловый менеджер в панели управления хостинга.
2. Перейдите в директорию, где находится Ваш сайт (обычно это /www/вашсайт.ком/
или аналог).
3. Создайте новый файл с именем phpinfo.php
.
4. Добавьте в файл следующий код и сохраните изменения:
Файл создан. Теперь нужно открыть его в браузере.
Открытие файла и трактовка информации
В адресной строке введите URL файла, например, https://example.com/phpinfo.php
, где example.com
— Ваш домен.
Вы увидите страницу с подробной информацией о PHP:

Страница phpinfo содержит много разделов. Ключевые из них:
- PHP Version. Показана текущая фактическая версия PHP. Полезно для проверки совместимости скриптов с сервером:
- Configure Command. Список расширений PHP, таких как
mysqli
,curl
,mbstring
. Помогает убедиться, что нужные модули активны:
- Core. Содержит параметры конфигурации, такие как
memory_limit
,upload_max_filesize
,max_execution_time
. Также предоставляет множество информации про переменные PHP в текущем окружении, например строкаdisable_functions
перечисляет запрещенные для исполнения функции. Полезно для настройки параметров сервера под нужды Вашего проекта:

Дополнительно: как можно заметить, информация в этом разделе разбита на колонки Local Value и Master Value. Master в этом контексте является глобальными настройками, предопределенными на сервере и используется для выполнения всех скриптов пока настройки выполнения не переопределены локально с помощью таких методов как ini_set()
или директивами .htaccess
(зависит от веб-сервера).
Совет: детально вопрос ограничений PHP таких как memory_limit
и другие рассматривается в отдельной статье.
-
Environment. Информация об окружении сервера, включая переменные
PATH
. Может быть полезно для диагностики некоторых проблем. -
PHP Variables. Отображает заголовки, отправляемые сервером.
Важно: после использования файла phpinfo.php
, желательно удалить его с сервера. Оставлять такой файл публично доступным опасно, так как злоумышленники могут использовать информацию о Вашем сервере против Вас.
Альтернативные способы
Вы можете оказаться в ситуации, когда создать и выполнить скрипт phpinfo
на Вашем сервере нет возможности - из-за каких-либо ограничений или из-за отсутствия прав.
Для таких случаев существует множество альтернативных способов получить нужную информацию про состояние PHP на сервере.
Дополнительно: при использовании множества различных версий PHP на одном сервере, нижеописанные команды следует модифицировать с указанием пути к версии PHP о какой Вы хотите получить данные. На практике это значит использование команды /usr/bin/php7.4 -i
вместо php -i
или /usr/bin/php7.4 -m
вместо php -m
.
php -i
Прямой альтернативой создания файла со скриптом и его выполнения в браузере является команда php -i.
Ее выполнение выведет Вам всю ту же информацию прямо в терминале:
Поскольку ее вывод очень объемный, имеет смысл сразу использовать ее в комбинации с grep
для поиска нужного значения. Например:
Который вернет нам информацию именно про указанное ограничение PHP:
php -m
Если стоит задача проверить наличие или отсутствие какого-то отдельного модуля, существует куда более быстрый способ проверки чем скрипт phpinfo
.
А именно – команда php -m. Ее использование возвратит Вам список всех активных модулей PHP. Это Важно, так как модуль может быть установлен на сервере, но не активирован в текущей загрузке PHP.
Ее точно так же можно комбинировать с grep
:
Если нужный модуль установлен, но не загружается, убедитесь, что модуль включен php.ini или в настройках PHP в панели.