如何在 Ubuntu 中切換多個 PHP 版本?以下這篇文章跟大家介紹一下Ubuntu中切換多個 PHP 版本的方,希望對大家有幫助!
有時,最新版本的安裝套件可能無法如預期運作。你的程式可能與更新的軟體包不相容,並且僅支援特定的舊版軟體包。在這種情況下,你可以立即將有問題的軟體包降級到其早期的工作版本。
但是,你無需降級某些軟體包。我們可以同時使用多個版本。例如,假設你在測試部署在 Ubuntu 22.04 LTS 中的LAMP 堆疊的 PHP 程式。過了一段時間,你發現應用程式在 PHP 7.2 中運作正常,但在 PHP 8.1 中不正常(Ubuntu 22.04 LTS 預設安裝 PHP 8.x)。你打算重新安裝 PHP 或整個 LAMP 堆疊嗎?
但是沒有必要。你甚至不必將 PHP 降級到其早期版本。在這個簡短的教學中,我將向你展示如何在 Ubuntu 22.04 LTS 中切換多個 PHP 版本。它沒你想的那麼難。請繼續閱讀。
要查看PHP 的預設安裝版本,請執行:
root@ubuntu-server:~# php -v PHP 8.1.7 (cli) (built: Jun 25 2022 08:13:46) (NTS) Copyright (c) The PHP Group Zend Engine v4.1.7, Copyright (c) Zend Technologies with Zend OPcache v8.1.7, Copyright (c), by Zend Technologies
如你所見,已安裝的PHP 的版本為8.1.7。在測試你的程式幾天后,你會發現你的程式不支援 PHP7.2。在這種情況下,同時使用 PHP7.x 和 PHP8.x 是個不錯的主意,這樣你就可以隨時輕鬆地在任何支援的版本之間切換。
你不必刪除 PHP8.x 或重新安裝 LAMP 堆疊。你可以同時使用 PHP7.x 和 8.x 版本。
我假設你還沒有在你的系統中卸載 PHP 7.2。萬一你已將其刪除,你可以使用下面的 PPA 再次安裝它。
sudo add-apt-repository -y ppa:ondrej/php sudo apt update sudo apt install php7.2
先使用指令停用PHP 8.1 模組:
root@ubuntu-server:~# a2dismod php8.1 Module php8.1 disabled. To activate the new configuration, you need to run: systemctl restart apache2
接下來,啟用PHP 7.2模組:
sudo a2enmod php7.2
將PHP 7.2 設定為預設版本:
sudo update-alternatives --set php /usr/bin/php7.2
或者,你可以執行下列指令來設定預設要使用的全域PHP 版本。
sudo update-alternatives --config php
輸入選擇的號碼將其設定為預設版本,或只需按回車鍵以保持當前選擇。
如果你已安裝其他 PHP 擴展,請將它們設為預設值。
sudo update-alternatives --set phar /usr/bin/phar7.2
最後,重新啟動Apache Web 伺服器:
sudo systemctl restart apache2
現在,檢查PHP 7.2 是否為預設版本:
root@ubuntu-server:~# php -v PHP 7.2.7-0ubuntu0.18.04.2 (cli) (built: Jul 4 2018 16:55:24) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.7-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies
同樣,你可以從PHP 7.x 切換到PHP 8.x 版本,如下所示。
sudo a2enmod php8.1 sudo a2dismod php7.2 sudo update-alternatives --set php /usr/bin/php8.1 sudo systemctl restart apache2
提醒一句:
目前穩定版php7.2已經停止支援
所以,建議盡快升級所有PHP 程式並與PHP 8. x 相容。
推薦學習:《PHP影片教學》
以上是聊聊Ubuntu怎麼切換多個 PHP 版本的詳細內容。更多資訊請關注PHP中文網其他相關文章!