章 60. 從 PHP 4 移植到 PHP 5

本章節將幫你從 PHP 4 移植到 PHP 5。

1. 從 PHP 4 向 PHP 5 移植
2. PHP 5 中還能用 MySQL 嗎?好像找不到了。
3. 聽說 PHP 有個全新的 OOP 模型,那現有的 OOP 代碼還能運行嗎?上哪去找這些新的 OOP 特性的訊息?
4. 除了 OOP 模型,PHP 5 還有哪些改動?此外,有沒有專門針對 PHP 5 的手冊?

1. 從 PHP 4 向 PHP 5 移植

儘管 PHP 5 提供了很多新特性,但它還是盡可能設計得與之前版本的 PHP 相容,只有很少功能不一致。

確認閱讀了本手冊中相應的 PHP 5 移植附錄,它包括了更多移植到 PHP 5 的訊息。

2. PHP 5 中還能用 MySQL 嗎?好像找不到了。

MySQL 依然被支援,唯一區別是 PHP 5 中預設為不啟動。這意味著在 PHP 的 configure 一行中不包括有 --with-mysql 選項,因此必須在編譯時手動加入。Windows 會員可以編輯 php.ini 並啟動 php_mysql.dll DLL。在 PHP 4 中沒有這個 DLL,因為已經編譯進 PHP 可執行檔案中去了。

此外,MySQL 用戶端庫也不再綁定於 PHP 中了。有關此題目的更多細節見此 FAQ。另外確保閱讀了 MySQL 章節中的安裝明細。一個配置行的例子是 --with-mysql=/usr,Windows 會員則需要 libmySQL.dll

3. 聽說 PHP 有個全新的 OOP 模型,那現有的 OOP 代碼還能運行嗎?上哪去找這些新的 OOP 特性的訊息?

PHP 5 的主要改進就是 OOP 模型現在使用了 Zend Engine 2.0zend.ze1_compatibility_mode 指令將啟動與 Zend Engine 1.0(PHP 4)的相容性。

新的 OOP 模型文件見 OOP 語系手冊OOP 移植附錄章節。

4. 除了 OOP 模型,PHP 5 還有哪些改動?此外,有沒有專門針對 PHP 5 的手冊?

其它幾個改動見移植到 PHP 5 附錄。沒有專門的 PHP 5 手冊,因為 PHP 的主要部分還是一樣的。