Как выбрать версию php ubuntu
Установка разных версий PHP на Linux Ubuntu
В Ubuntu можно легко управлять несколькими версиями PHP. Мы рассмотрим процесс установки разных версий PHP и жонглирования ими.
Установка PHP
В зависимости от необходимой версии PHP и версии Ubuntu, подход к установке может отличаться.
Установка базовой версии
Это самый простой способ. Каждая версия Ubuntu в своем репозитории содержит соответствующую версию PHP.
Установка выполняется одной командой:
Установка определенной версии
Если нам необходима версия PHP, которой нет в репозитории, выполняем установку дополнительного — для этого вводим две команды:
apt install software-properties-common
Теперь можно установить нужную версию интерпретатора:
apt-get install php7.4
apt-get install php8.0
* в данном примере 7.4 и 8.
Выбор версии PHP по умолчанию
Посмотреть текущую версию php, которая работает по умолчанию можно командой:
Сменить версию по умолчанию:
There are 2 choices for the alternative php (providing /usr/bin/php).
Selection Path Priority Status
————————————————————
* 0 /usr/bin/php8.0 80 auto mode
1 /usr/bin/php7.4 74 manual mode
2 /usr/bin/php8.0 80 manual mode
* в данном примере используется версия php8 как версия по умолчанию.
Для смены, система предложит нам выбрать версию из списка:
Press to keep the current choice[*], or type selection number: 1
* так мы переключимся на php7.4.
Установка расширений
Расширения устанавливаются с синтаксисом:
Для версии, которая идет по умолчанию в репозитории, установку можно выполнить так:
apt install php-mysqli
В остальных случаях обязательно указываем версию:
apt install php7.4-mysqli
Настройка PHP
В Ubuntu настройки PHP находятся в разных файлах — для каждой версии и для каждой системы, которая обрабатывает запросы.
Например, для php версии 8.0, которая будет запускаться из командной строки, файл будет:
Установка нескольких версий PHP на Ubuntu 18.04.3 LTS
Table of contents
Introduction
В данной статье мы установим несколько версий PHP на наш сервер Ubuntu 18.04.3 LTS и рассмотрим команды для переключения между версиями.
Начнем с обновления пакетов:
Установка версии PHP, которая идет по умолчанию
Проверим версию PHP :
В процессе установки также были поставлены следующие пакеты:
| Пакет | Описание |
|---|---|
| php7.2 | server-side, HTML-embedded scripting language (metapackage) |
| php7.2-cli | command-line interpreter for the PHP scripting language |
| php7.2-common | documentation, examples and common module for PHP |
| php7.2-json | JSON module for PHP |
| php7.2-opcache | Zend OpCache module for PHP |
| php7.2-readline | readline module for PHP |
Установим наиболее распространенные модули для PHP :
| Пакет | Описание |
|---|---|
| libapache2-mod-php7.2 | server-side, HTML-embedded scripting language (Apache 2 module) |
| php-pear | PEAR Base System |
| php7.2-curl | CURL module for PHP |
| php7.2-dev | Files for PHP7.2 module development |
| php7.2-fpm | server-side, HTML-embedded scripting language (FPM-CGI binary) |
| php7.2-gd | GD module for PHP |
| php7.2-mbstring | MBSTRING module for PHP |
| php7.2-mysql | MySQL module for PHP |
| php7.2-xml | DOM, SimpleXML, WDDX, XML, and XSL module for PHP |
| php7.2-zip | Zip module for PHP |
Посмотреть все установленные PHP пакеты можно командой:
Установка другой версии PHP
Теперь добавим репозиторий:
Обновим список пакетов:
После того, как, мы добавили репозиторий, перейдем к установке PHP 7.3 :
Были поставлены следующие пакеты:
| Пакет | Описание |
|---|---|
| libapache2-mod-php7.3 | server-side, HTML-embedded scripting language (Apache 2 module) |
| php7.3 | server-side, HTML-embedded scripting language (metapackage) |
| php7.3-cli | command-line interpreter for the PHP scripting language |
| php7.3-common | documentation, examples and common module for PHP |
| php7.3-json | JSON module for PHP |
| php7.3-opcache | Zend OpCache module for PHP |
| php7.3-readline | readline module for PHP |
Установим дополнительные модули для PHP :
Проверим версию PHP:
Переключение между версиями PHP
Переключение происходит следующей командой:
apache — переключение версий php в командной строке ubuntu 16.04
Я установил php 5.6 и php7.1 на мою Ubuntu 16.04
Я знаю с Apache, как мой веб-сервер, я могу сделать
Когда я отключаю php7.1 в модулях apache и включаю php5.6, apache распознает изменение и использует интерпретатор php5.6, как и ожидалось.
Но когда я запускаю внутренний php веб-сервер из командной строки:
php обрабатывает запросы, используя php7, как мне переключиться между php6.6 и php7.1 в командной строке?
Решение
Интерактивный режим переключения
Ручное переключение
Из PHP 5.6 => PHP 7.1
В вашей системе установлен PHP 5.6 по умолчанию, и вам нужно переключиться на PHP 7.1.
Из PHP 7.1 => PHP 5.6
В вашей системе установлен PHP 7.1 по умолчанию, и вам нужно переключиться на PHP 5.6.
Другие решения
введите это в вашей оболочке
и это то, что вы получите
Выберите подходящую версию
Я думаю, вы должны попробовать это
С php5.6 до php7.1
С php7.1 до php5.6
Чтобы просмотреть все доступные версии и выбрать из них:
Или сделать вручную
Вы можете создать скрипт для переключения с версий: sudo nano switch_php
затем введите это:
выйти и сохранить
сделать его исполняемым: sudo chmod +x switch_php
Вот и все, теперь вы можете легко переключаться с PHP7 на PHP 5.6!
Введите данную команду в свой терминал.
Для отключения выбранной версии PHP …
Для включения другой версии PHP ….
Он обновит версию Php, то же самое произойдет в обратном порядке, если вы хотите понизить версию, вы можете увидеть это с помощью PHP_INFO ();
Переключитесь с PHP 5.6 на PHP 7.2, используя:
Переключитесь с PHP 7.2 на PHP 5.6, используя:
Смена версии php в Ubuntu
Привет
Нужно поменять версию php с 7 на 5.6 на Ubuntu.
В Ubuntu только 2 день, поэтому сильно не разбираюсь
5 ответов 5
Сначала удалим все PHP библиотеки
Затем добавляем PPA с которого будем качать PHP т.к. в стандартном apt-get есть только последняя седьмая версия по умолчанию В Ubuntu 16.04. apt это пакетный менеджер в Ubuntu, из него мы устанавливаем программы, пакеты, библиотеки и т.д. Следующей командой мы добавляем в него адрес PPA откуда он выкачает нам нужный PHP-5.6.
Если выдаст ошибку add-apt-repository: command not found
То нужно выполнить следующую команду
Далее выполняем две команды последовательно
Установка PHP 5.6
На этом этапе PHP уже установлен, но чтобы установить дополнительные библиотеки можно ввести:
Дополнительно
Чтобы найти точные названия библиотек в apt-get для фреймворка или при необходимости, пример:
Проверка версии PHP
Рекомендую использовать для таких целей специальные PPA, например эту:
И после добавления поставить php 5.6 таким образом:
И нужно будет не забывать, что все пакеты для php, например php-mysql, php-xml нужно будет ставить таким образом:
P.S. все предыдущие версии php надо удалить
Как переключаться между несколькими версиями PHP в Ubuntu
Иногда самая последняя версия установленного пакета может работать не так, как вы ожидали.
Приложение может не соответствовать обновленному пакету и поддерживать только определенную старую версию пакета.
В таких случаях вы можете просто отказаться от проблемного пакета до его ранней рабочей версии в кратчайшие сроки
Однако вам не нужно понижать некоторые пакеты.
Мы можем использовать несколько версий одновременно.
Например, скажем, вы тестируете приложение PHP в стек LAMP, развернутое в Ubuntu 18.04 LTS.
Через некоторое время вы обнаружите, что приложение отлично работает в PHP5.6, но не в PHP 7.2 (Ubuntu 18.04 LTS устанавливает PHP 7.x по умолчанию).
Вы собираетесь снова установить PHP или весь пакет LAMP? Не обязательно.
Вам даже не нужно понижать PHP до более ранней версии.
В этом кратком уроке я покажу вам, как переключаться между несколькими версиями PHP в Ubuntu 18.04 LTS. Это не так сложно, как вы думаете.
Полное обучение PHP вы всегда можете пройти здесь : https://webshake.ru/php-training-course
Переключение между несколькими версиями PHP
Чтобы проверить установленную по умолчанию версию PHP, запустите:
Как вы можете увидеть, установленная версия PHP – 7.2.7.
После тестирования вашего приложения пару дней вы узнаете, что ваше приложение не поддерживает PHP7.2.
В таких случаях неплохо иметь версию PHP5.x и версию PHP7.x, так что вы можете в любой момент легко переключаться между любой поддерживаемой версией.
Вам не нужно удалять PHP7.x или переустанавливать стек LAMP. Вы можете использовать как версии PHP5.x, так и 7.x вместе.
Я предполагаю, что вы еще не удалили php5.6 в своей системе.
На всякий случай, вы удалили его уже, вы можете установить его снова, используя PPA, как показано ниже.
Вы можете установить PHP5.6 из PPA:
Переключитесь с PHP7.x на PHP5.x
Сначала отключите модуль PHP7.2, используя команду:
Затем включите модуль PHP5.6:
Установите PHP5.6 в качестве версии по умолчанию:
Кроме того, вы можете запустить следующую команду, чтобы установить, какую версию PHP по всей системе вы хотите использовать по умолчанию.
Введите номер, чтобы установить его как версию по умолчанию или просто нажмите ENTER, чтобы сохранить текущий выбор.
В случае, если вы установили другие расширения PHP, установите их как по умолчанию.
Наконец, перезапустите веб-сервер Apache:
Теперь проверьте, является ли версия PHP5.6 версией по умолчанию или нет:
Переключитесь с PHP5.x на PHP7.x
Аналогично, вы можете переключиться с PHP5.x на версию PHP7.x, как показано ниже:



