PHP 是 Web 開發的基石,不斷發展,每個版本都提供新功能和改進。 PHP 8.2 的發布也不例外,它帶來了一些增強功能,有望增強效能、提高程式碼可讀性並引入更強大的類型系統。對於開發人員和系統管理員來說,了解這些更新以及如何利用它們對於維護和開發現代 Web 應用程式至關重要。
PHP 8.2 引入了幾項顯著的增強功能,旨在簡化開發工作流程並增強應用程式的安全性和功能:
- 唯讀類:使不可變類別更簡單簡潔。
- 析取範式 (DNF) 類型:在類型聲明中提供更大的靈活性。
- null、false 和 true 的獨立類型:改進專用類型的類型檢查。
- 新的“隨機”擴展:提供更安全和物件導向的方法來產生隨機數。
- 特徵中的常數: 允許特徵聲明常數可以增強它們的實用性。
- 已棄用的動態屬性:透過棄用未經批准的動態屬性來鼓勵更好的編碼實踐。
- 新類別、介面和函數:引入新的功能和屬性以進一步提高 PHP 的功能。
這些增強功能強調了 PHP 對推動 Web 技術的承諾,並強調了跟上最新開發實踐的重要性。讓我們深入了解如何安裝此最新版本並釋放 Web 開發專案的全部潛力。
在 Ubuntu 上安裝 PHP 8.2 的先決條件
若要在 Ubuntu 上成功安裝 PHP 8.2,請確保符合以下要求:
系統要求和支援的 Ubuntu 版本
成分 | 最低要求 |
---|---|
處理器 | 2 GHz 或更快的雙核心處理器 |
記憶體 | 4 GB 或更多 |
磁碟空間 | 25 GB 可用空間 |
網路 | 高速網路連線 |
支援的版本 | Ubuntu 24.04(高貴), Ubuntu 22.04(傑米), Ubuntu 20.04(焦點) |
其他要求
要求 | 描述 |
---|---|
網路連線 | 下載 PHP 8.2 和應用程式更新所必需的。 |
終端約定 | 所有終端命令都應以普通用戶身份執行 sudo 特權。 |
CLI 指令 | 使用命令列介面 (CLI) 進行安裝和設定。 |
網路伺服器 | 確保安裝了相容的 Web 伺服器(例如 Apache、Nginx)以執行 PHP 腳本。 |
安裝 PHP 之前更新 Ubuntu
先更新你的 Ubuntu 系統至關重要。此步驟增強了安全性並確保新軟體的順利安裝。使用以下命令刷新軟體包清單並升級過時的軟體包:
sudo apt update
sudo apt upgrade
在 Ubuntu 上安裝 PHP PPA 的初始套件
在新增 PHP PPA 之前,請安裝必要的套件以進行安全性套件處理。其中包括用於憑證驗證和軟體屬性管理的工具。
運行以下命令:
sudo apt install ca-certificates apt-transport-https software-properties-common lsb-release -y
新增 PHP 8.2 PPA
現在,整合 翁德雷‧蘇裡 (Ondrej Surý) PHP PPA 進入您的系統。該儲存庫提供了最新的 PHP 版本,超越了 Ubuntu 的預設版本。
使用以下命令導入儲存庫:
sudo add-apt-repository ppa:ondrej/php -y
新增 PPA 後,更新包快取以識別新來源:
sudo apt update
最後,使用以下內容升級任何需要更新的軟體包:
sudo apt upgrade
繼續安裝 PHP 8.2
選項 1:將 PHP 安裝為 Apache 模組
對於 Apache HTTP 伺服器環境,PHP 通常會作為模組安裝。要維護精簡的伺服器,只需安裝所需的特定 PHP 版本。
使用以下命令在 Ubuntu 上將 PHP 8.2 作為 Apache 模組安裝:
sudo apt install php8.2 libapache2-mod-php8.2
安裝後,重新啟動 Apache 以載入新的 PHP 模組:
sudo systemctl restart apache2
選項 2:使用 PHP-FPM 安裝 Apache
PHP-FPM 為繁忙的網站提供增強的效能。
要使用 PHP-FPM for Apache 在 Ubuntu 上安裝 PHP 8.2:
sudo apt install php8.2-fpm libapache2-mod-fcgid
啟用 PHP-FPM:
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.2-fpm
重新啟動 Apache 以套用變更:
sudo systemctl restart apache2
選項 3:安裝 Nginx 的 PHP 8.2 支持
Nginx 需要 PHP-FPM 來處理 PHP 檔案。在 Ubuntu 上安裝 PHP 8.2,並在 Nginx 上安裝 PHP-FPM:
sudo apt install php8.2 php8.2-fpm php8.2-cli
如果 PHP-FPM 8.2 服務未執行,請手動啟動它:
sudo systemctl start php8.2-fpm
為 PHP-FPM 8.2 設定 Nginx 伺服器區塊
修改 Nginx 伺服器區塊以處理 PHP 檔案。將其添加到相關的伺服器區塊中:
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
}
您可以使用以下命令驗證修改後的 Nginx 設定的語法:
sudo nginx -t
此命令驗證設定檔的語法並突出顯示發現的任何錯誤。成功的輸出將如下所示:
nginx:設定檔/etc/nginx/nginx.conf語法正確 nginx:設定檔/etc/nginx/nginx.conf測試成功
確認語法正確後,重新啟動 Nginx 服務以套用變更:
sudo systemctl restart nginx
最後一點,請務必檢查系統上安裝的 PHP 版本。使用以下命令來執行此操作:
php --version
此命令顯示系統目前的 PHP 版本,使您可以確認安裝或升級是否成功。
使用 PHP 8.2 擴充
安裝 PHP 8.2 擴充
若要在 Ubuntu 上自訂 PHP 8.2,請選擇符合您的專案要求的擴充功能。這種方法提高了性能和安全性。
使用以下命令安裝必要的擴充功能:
sudo apt install php8.2-{cli,fpm,curl,mysqlnd,gd,opcache,zip,intl,common,bcmath,imagick,xmlrpc,readline,memcached,redis,mbstring,apcu,xml,dom,memcache}
了解 PHP 8.2 擴充
- php-cli:用於執行 PHP 腳本的命令列介面。
- php-fpm:FastCGI 進程管理器,用於高效率的請求處理。
- php-curl:啟用與不同伺服器類型的通訊。
- php-mysqlnd:用於資料庫連接的 MySQL 本機驅動程式。
- php-gd:用於影像處理的圖形庫。
- php-opcache:透過快取預編譯腳本字節碼來提高 PHP 效能。
- php-zip:管理zip檔操作。
- php 國際化:對全域字元集的國際化支援。
- php 一般:跨多個 PHP 模組的通用功能。
- php-bcmath:用於精確的浮點運算。
- php-imagick:使用 ImageMagick 的影像處理功能。
- php-xmlrpc:XML-RPC 伺服器和客戶端功能。
- php-readline:從終端讀取互動式輸入。
- php-memcached 和 php-redis:用於提高效能的快取解決方案。
- php-mbstring:處理多位元組字元編碼。
- php-apcu:用戶快取以增強PHP應用程式效能。
- php-xml 和 php-dom:XML 解析和操作。
要查找其他模組(上面只是一個範例),請使用搜尋命令,如下所示:
sudo apt search php8.2-
監控已安裝的 PHP 8.2 模組
使用 php -m
查看載入的 PHP 模組:
php8.2 -m
建議定期檢查和刪除未使用的模組以保持效率。
安裝 PHP 8.2 開發工具
對於PHP開發和調試:
sudo apt install php8.2-xdebug php8.2-pcov php8.2-dev
結論性思考
總而言之,本指南成功地為您提供了在 Ubuntu 24.04、22.04 或 20.04 上安裝 PHP 8.2 的步驟。提供的說明適用於各種伺服器環境,無論是將 PHP 配置為 Apache 模組、將 PHP-FPM 與 Apache 結合使用,或是為 Nginx 設定 PHP 支援。定期更新您的系統和 PHP 版本,以獲得安全性和效能優勢。
有用的連結
以下是一些與使用 PHP 相關的有價值的連結:
- PHP官方網站:造訪 PHP 官方網站,了解有關程式語言、其功能和下載選項的資訊。
- PHP 8.2 發行說明:瀏覽 PHP 8.2 的發行說明,了解新功能、改進和變更。
- PHP 8.2 變更日誌:查看 PHP 8 的更改日誌以查看每個版本中更改和更新的詳細清單。
- PHP 文件:訪問全面的文檔,以獲取有關 PHP 使用和編程的詳細指南。
- PHP 支援:尋找各種支援資源以獲得 PHP 協助,包括郵件清單和使用者群組。