Переключение между версиями PHP — обычное требование для веб-разработчиков и системных администраторов. Различные приложения и проекты могут использовать определенные версии PHP из соображений совместимости или производительности. В этой статье мы рассмотрим различные способы переключения между версиями PHP, предоставив примеры кода и пошаговые инструкции.
Метод 1: использование диспетчера версий PHP (рекомендуется)
Менеджер версий PHP упрощает процесс установки и управления несколькими версиями PHP в одной системе. Одним из популярных менеджеров версий является «phpbrew». Вот как переключаться между версиями PHP с помощью phpbrew:
-
Установите phpbrew с помощью менеджера пакетов:
$ curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.phar $ chmod +x phpbrew.phar $ sudo mv phpbrew.phar /usr/local/bin/phpbrew
-
Инициализировать phpbrew:
$ phpbrew init
-
Перечислить доступные версии PHP:
$ phpbrew known
-
Установить определенную версию PHP:
$ phpbrew install 7.4.10 +default
-
Переключиться на нужную версию PHP:
$ phpbrew switch php-7.4.10
Метод 2: использование интерфейса командной строки PHP (CLI)
Если вам нужно переключать версии PHP только для задач командной строки, вы можете использовать PHP CLI напрямую. Вот как это сделать:
-
Найдите каталог, содержащий исполняемый файл нужной версии PHP (например,
php7.4
). -
Создайте псевдоним для переключения между версиями PHP:
$ alias php="path/to/php7.4"
-
Чтобы переключиться на другую версию PHP, измените псевдоним соответствующим образом:
$ alias php="path/to/php7.3"
Метод 3: настройка веб-сервера (например, Apache или Nginx)
Если вы хотите переключить версии PHP для сред веб-сервера, вы можете настроить сервер на использование разных версий PHP на основе виртуальных хостов или каталогов. Вот пример для Apache:
-
Установите и включите необходимые модули Apache:
$ sudo apt-get install libapache2-mod-php7.4 libapache2-mod-php7.3 $ sudo a2enmod php7.4 $ sudo a2enmod php7.3
-
Настройте виртуальные хосты для использования нужной версии PHP:
<VirtualHost *:80> ServerName example.com DocumentRoot /var/www/html <Directory /var/www/html> # PHP 7.4 Configuration <FilesMatch \.php$> SetHandler application/x-httpd-php7.4 </FilesMatch> </Directory> </VirtualHost>
Переключение между версиями PHP имеет решающее значение для обеспечения совместимости и производительности приложений. Используя менеджер версий PHP, например phpbrew, или настраивая веб-сервер или среду командной строки, вы можете легко переключаться между различными версиями PHP. Выберите метод, который лучше всего соответствует вашим требованиям и среде разработки.