
Для разработки на PHP важно знать, какая версия установленного интерпретатора используется на вашем сервере или локальной машине. Это критично для настройки совместимости с различными фреймворками и библиотеками, а также для корректной работы приложений. В Ubuntu существует несколько простых способов получить эту информацию через терминал, не требуя дополнительных инструментов или сложных настроек.
Первый способ – это использование команды php -v. Эта команда выведет информацию о версии PHP, которая установлена по умолчанию для системы. Также будет указана дополнительная информация, например, сборка PHP и данные о доступных модулях. Если версия PHP установлена не по умолчанию, можно уточнить её, вызвав команду для конкретной версии, например, php7.4 -v для версии 7.4.
Для более детального анализа установленных версий можно воспользоваться инструментом update-alternatives. Выполнив команду sudo update-alternatives —display php, вы получите полную информацию о версиях PHP, доступных на вашей системе. Это будет полезно, если на вашем сервере установлено несколько версий PHP, и вам нужно точно понять, какая из них активна в данный момент.
Помимо этих методов, важно учитывать, что для серверов с веб-сервером Apache или Nginx версии PHP могут отличаться в зависимости от конфигурации. В этом случае нужно проверять настройки самого веб-сервера, чтобы убедиться, какая версия PHP обслуживает ваш сайт или приложение.
Проверка версии PHP с помощью команды `php -v`
Просто откройте терминал и введите команду:
php -v
Результат будет выглядеть примерно так:
PHP 7.4.3 (cli) (built: Feb 20 2020 09:25:42) ( NTS )
Здесь указана версия PHP (7.4.3), режим работы (CLI — Command Line Interface), дата сборки и тип сборки (NTS — Non-Thread Safe, не поддерживает многопоточность).
Если команда `php -v` не возвращает ожидаемого результата, возможно, PHP не установлен или не добавлен в системный путь. В этом случае можно установить PHP через пакетный менеджер apt:
sudo apt update sudo apt install php
Если на сервере установлено несколько версий PHP, и вы хотите проверить версию для конкретной команды, используйте полный путь к PHP-исполнителю:
/usr/bin/php -v
Использование команды `update-alternatives —display php` для определения версии

Для точного определения версии PHP, установленной в системе Ubuntu, можно использовать команду `update-alternatives —display php`. Эта команда позволяет получить подробную информацию о текущей версии PHP и ее настройках в системе, включая пути к используемым исполнимым файлам и их приоритеты.
Когда вы выполняете команду:
sudo update-alternatives --display php
php - auto mode link best version is /usr/bin/php7.4 slave phpize.1.gz is /usr/share/php7.4/phpize.1.gz slave php-config.1.gz is /usr/share/php7.4/php-config.1.gz
- auto mode – означает, что система автоматически выбирает установленную версию PHP, которая настроена как «по умолчанию».
- link best version – указывает на версию, которая используется в качестве основной (в данном примере это PHP 7.4).
- slave – это дополнительные файлы (например, phpize или php-config), связанные с выбранной версией PHP.
Таким образом, с помощью этой команды можно быстро узнать, какая версия PHP в данный момент активна. Она также предоставляет информацию о настройках альтернатив для других PHP-инструментов, что полезно, если на сервере используется несколько версий PHP.
Для изменения версии PHP можно использовать команду:
sudo update-alternatives --config php
Она позволит выбрать нужную версию из списка доступных альтернатив. Это полезно, если требуется переключиться на другую версию для конкретных задач или приложений.
Проверка версии PHP через файл `phpinfo()`
Чтобы получить информацию о текущей версии PHP на сервере Ubuntu, можно воспользоваться встроенной функцией `phpinfo()`. Этот метод особенно полезен для получения подробных сведений о конфигурации PHP, установленных расширениях и других настройках.
Для этого необходимо создать простой PHP-скрипт. Откройте текстовый редактор и создайте новый файл с именем, например, `info.php`. Вставьте в файл следующий код:
Загрузите файл на сервер в публичную директорию, например, в `/var/www/html`, используя FTP или команду `cp` в терминале. Например:
sudo cp info.php /var/www/html/
Теперь, если в браузере перейти по адресу `http://<ваш_сервер>/info.php`, вы увидите страницу, содержащую информацию о версии PHP, установленных модулях и настройках конфигурации.
Для проверки версии достаточно найти строку с информацией о версии PHP, которая обычно выглядит так:
PHP Version 7.4.3
Этот способ работает только в том случае, если на сервере настроен веб-сервер, поддерживающий PHP (например, Apache или Nginx). Также стоит помнить, что файл `info.php` следует удалить сразу после использования, чтобы избежать утечек конфиденциальной информации, так как он может раскрывать важные данные о системе.
Как узнать версию PHP для конкретного пользователя или веб-сервера

Для того чтобы узнать версию PHP, используемую для определенного пользователя или веб-сервера, нужно понимать, что на одном сервере может быть несколько версий PHP, работающих параллельно, например, для CLI и для веб-сервера Apache или Nginx.
Для определения версии PHP, работающей в командной строке, используйте команду:
php -v
Это покажет текущую версию PHP, установленную для текущего пользователя и используемую в консоли.
Для версии PHP, работающей с веб-сервером, вам нужно сделать запрос к серверу. Например, для Apache можно использовать команду:
apache2ctl -M | grep php
Для точного определения версии PHP через веб-сервер, создайте файл с расширением .php в корневой директории вашего веб-сайта и вставьте в него код:
<?php phpinfo(); ?>
Если на сервере работает несколько версий PHP (например, через PHP-FPM), можно проверить конфигурацию через файлы nginx или Apache для каждого виртуального хоста. В случае с Nginx это выглядит так:
grep 'fastcgi_pass' /etc/nginx/sites-available/*
В файле конфигурации будет указан путь к соответствующему сокету или порту, который отвечает за обработку PHP-запросов. Это поможет определить, какая версия PHP используется для обработки запросов на конкретном сайте.
Проверка версии PHP через `apt-cache` или `dpkg`
Для того чтобы узнать версию PHP, установленную в системе Ubuntu, можно воспользоваться утилитами `apt-cache` или `dpkg`. Оба способа позволяют получить информацию о версии PHP и установленных пакетах.
Использование `apt-cache`

Команда `apt-cache` позволяет получить данные о доступных пакетах в репозиториях, а также об установленных пакетах. Чтобы узнать версию PHP через `apt-cache`, выполните следующую команду:
apt-cache show php
apt-cache show php7.4
Эта команда покажет информацию только для указанной версии PHP.
Использование `dpkg`
Команда `dpkg` дает более детализированную информацию о уже установленных пакетах в системе. Для получения версии PHP с помощью `dpkg` выполните команду:
dpkg -l | grep php
Она выведет список всех установленных пакетов, связанных с PHP, и укажет их версии. Если вы хотите узнать точную версию какого-либо конкретного пакета, например, `php7.4-cli`, используйте команду:
dpkg -l php7.4-cli
Рекомендации
- Если вам нужно узнать все доступные версии PHP для установки, используйте `apt-cache`.
- Для проверки точных версий уже установленных пакетов предпочтительнее использовать `dpkg`.
Использование Composer для определения версии PHP

Чтобы узнать версию PHP, связанную с Composer, выполните следующую команду в терминале:
composer -v
Результатом будет строка, в которой будет указана версия Composer, а также версия PHP, которая используется для работы Composer. Например:
Composer version 2.1.3 2021-05-06 16:09:47
PHP version 7.4.3
Это поможет вам определить, с какой версией PHP работает Composer, независимо от того, что указано по умолчанию в системе.
Если вы хотите проверить, с какой версией PHP Composer будет работать в разных окружениях (например, для разных версий PHP, установленных через php-fpm или php-cli), убедитесь, что Composer использует правильную версию PHP. Вы можете задать это явно, указав путь к исполнимому файлу PHP:
php /path/to/composer.phar -v
Также можно использовать команду composer diagnose для диагностики возможных проблем, включая информацию о версии PHP и настройках системы:
composer diagnose
Этот подход позволяет вам точно контролировать и проверять, какую версию PHP использует Composer, что особенно важно при работе с несколькими версиями PHP на одном сервере или локальной машине.
Как обновить версию PHP на Ubuntu

Для обновления версии PHP на Ubuntu, нужно выполнить несколько шагов, начиная с добавления репозитория, который содержит более новые версии PHP, и заканчивая настройкой используемой версии PHP для вашего веб-сервера.
1. Сначала обновите список пакетов и установите необходимые утилиты для управления репозиториями:
sudo apt update sudo apt install software-properties-common
2. Добавьте репозиторий, содержащий более новые версии PHP. Для этого выполните следующую команду:
sudo add-apt-repository ppa:ondrej/php
3. После добавления репозитория обновите список пакетов:
sudo apt update
4. Теперь можно установить нужную версию PHP. Например, чтобы установить PHP 8.1, выполните команду:
sudo apt install php8.1
5. Убедитесь, что установлены все необходимые модули PHP. Для этого используйте следующую команду для установки популярных модулей:
sudo apt install php8.1-cli php8.1-fpm php8.1-mysql php8.1-xml php8.1-mbstring
6. Чтобы переключиться на новую версию PHP для веб-сервера Apache, используйте следующие команды:
sudo a2dismod php7.4 sudo a2enmod php8.1 sudo service apache2 restart
7. Если вы используете Nginx, необходимо изменить конфигурацию PHP-FPM. Остановите текущую версию PHP-FPM:
sudo systemctl stop php7.4-fpm
Затем запустите новую версию PHP-FPM:
sudo systemctl start php8.1-fpm
8. Чтобы установить PHP как стандартную версию для CLI, выполните команду:
sudo update-alternatives --set php /usr/bin/php8.1
9. Проверьте текущую версию PHP, чтобы убедиться в правильности обновления:
php -v
Если на сервере используется несколько версий PHP, можно также настроить переключение между ними с помощью команды update-alternatives.
Вопрос-ответ:
Как узнать версию PHP на Ubuntu?
Чтобы узнать версию PHP на Ubuntu, откройте терминал и выполните команду php -v. Эта команда выведет информацию о текущей установленной версии PHP, например, «PHP 7.4.3». Если PHP не установлен, вам будет предложено установить его.
Что делать, если команда php -v не выводит информацию о версии?
Если команда php -v не выводит версию, это может означать, что PHP не установлен или не добавлен в системный путь. В таком случае, сначала проверьте, установлен ли PHP, с помощью команды which php. Если результат пустой, то установите PHP, используя команду sudo apt install php.
Могу ли я узнать несколько версий PHP, если на сервере установлены несколько?
Да, на сервере могут быть установлены несколько версий PHP. Чтобы узнать, какие версии PHP доступны, используйте команду update-alternatives —display php. Это покажет все версии PHP, установленные в системе, а также текущую активную версию.
Как переключиться между версиями PHP на Ubuntu?
Чтобы переключиться между версиями PHP на Ubuntu, используйте команду sudo update-alternatives —config php. После этого появится список установленных версий PHP, и вам нужно будет выбрать нужную, указав соответствующий номер.
Как установить определенную версию PHP на Ubuntu?
Для установки конкретной версии PHP на Ubuntu можно воспользоваться командой sudo apt install php
