2011-01-14 61 views
8

我開始學習PHP。我想使用PHP 5.3,因爲它是目前爲止最新的版本。我正在開發一個項目,我將使用某人給我的PHP 5.2腳本。PHP 5.3向後兼容PHP 5.2嗎?

即使我使用PHP 5.3,他們會運行得很好嗎?

+8

http://www.php.net/manual/en/migration53.php應該都有需要知道的。 – 2011-01-14 16:50:44

回答

10

PHP.net提供了一個guide從PHP 5.2.x升級到PHP 5.3。這包括關於backwards compatibility的部分。

從我的經驗來看,從5.2到5.3的過渡非常流暢。我的應用程序遇到的唯一問題是確保我的DateTime設置屬性是在我的php.ini中配置的,並過濾出一些開始出現的過分貶低警告。

+1

+1。對我來說也非常平穩的過渡。我碰到的一個問題在這裏描述:http://stackoverflow.com/questions/4673472/php-5-3-and-assigning-the-return-value-of-new-by-reference – mfonda 2011-01-14 17:11:47

2

大多數情況下,小版本發佈不會導致您的問題。你應該沒問題。

顯然,如果您確實有任何問題,您需要確保您已設置error_reporting以查看所有錯誤。 PHP: error_reporting

此外,從5.2檢查5.3更改手冊:Migrating from PHP 5.2.x to PHP 5.3.x

5

不,5.3不向後兼容,並通過各種手段它不應該被看作是一個次版本升級。 有一個頁面專門用於不兼容的更改:http://www.php.net/manual/en/migration53.incompatible.php 還考慮您已設計但已被接受的功能5.3。由於php不支持重載或覆蓋函數,這會導致錯誤。

+0

「考慮你有的功能設計但已被接受到5.3「哇,這是一個罕見的/隨機的事情指出:D,但爲什麼-1? – Hannes 2011-01-14 17:01:50

2

有一些小問題。通過引用的呼叫時間傳遞已被棄用。有新的保留字(即。goto)。

0

php在所有版本中都沒有向後兼容性。它在更改版本時通常會刪除一些功能。當您必須升級服務器並需要更改php版本,但某些php腳本不再使用新的php版本時,會出現問題。你還必須糾正一個更大的工作PHP腳本。但是,如果腳本屬於其他用戶而不屬於您的用戶,則無法升級這些腳本。這是一個真正令人頭痛的情況,我厭倦了php並改用perl來代替以實現向後兼容的原因。