PHP 5.2.0 發佈公告
PHP 開發團隊很榮幸地宣布 PHP 5.2.0 正式發佈。此版本是 5.X 系列的重大改進,包含了大量的新功能、錯誤修正和安全性增強。
PHP 5.2.0 的主要功能包括:
- 新的 Zend 引擎記憶體管理器,具有更高的效能和更準確的記憶體使用追蹤。
- 新增了輸入過濾擴充套件,並預設啟用。
- 新增了 JSON 擴充套件,並預設啟用。
- 引入了用於建立和編輯 zip 檔案的 ZIP 擴充套件。
- 引入了用於追蹤檔案上傳進度的鉤子 (Hooks)。
- 引入了 E_RECOVERABLE_ERROR 錯誤模式。
- 引入了 DateTime 和 DateTimeZone 物件,以及用於操作日期/時間資訊的方法。
- 升級了內建的 SQLite、PCRE 函式庫。
- 針對 Windows 安裝升級了 OpenSSL、MySQL 和 PostgreSQL 用戶端函式庫。
- 許多效能改進。
- 修正了超過 200 個錯誤。
PHP 5.2.0 中的安全性增強和修正
- 使 PostgreSQL 和 PDO 擴充套件中的 PostgreSQL 跳脫函式盡可能地追蹤字元集編碼。
- 新增了 allow_url_include,預設設定為 Off,以禁止在 include 和 require 中使用 URL。
- 當 open_basedir 和 safe_mode 啟用時,停用 realpath 快取。
- 強化 error_log() 函式的 safe_mode 執行。
- 修正 htmlspecialchars() 和 htmlentities() 函式底層程式碼中可能發生的緩衝區溢位問題。
- 為 cURL 擴充套件加入遺漏的 safe_mode 和 open_basedir 檢查。
- 修正 64 位元機器上 str_repeat() 和 wordwrap() 函式的溢位問題。
- 修正 tempnam() 函式中處理長路徑的問題。
- 修正 session.save_path 的 safe_mode/open_basedir 檢查,使其能夠處理額外參數。
- 修正 ini_restore() 函式中的 ini 設定覆蓋問題。
強烈建議所有 PHP 使用者,尤其是使用較早 PHP 5 版本的使用者,盡快升級到此版本。此版本也淘汰了 PHP 5.1 分支。
對於從 PHP 5.0 和 PHP 5.1 升級的使用者,這裡提供了一份升級指南,詳細說明了這些版本與 PHP 5.2.0 之間的差異。
有關 PHP 5.2.0 的完整變更列表,請參閱變更記錄。