PHP 語言的開發者為向下相容性下了很多功夫,因此在新版本的 PHP 下,老版本的程式碼應該可以在不作任何改動的情況下(理想地)執行。不過實際上,還是必須對老的程式碼做一些改動。
有可能影響到老版本的程式碼的最重要的兩點改動分別是:
1、舊的 $HTTP_*_VARS 陣列從 PHP 5.4.0 開始將不再有效。 PHP ? 4.1.0 版本引入了如下超全域性陣列變數: $_GET、$_POST、$_COOKIE、 $_SERVER、$_FILES、$_ENV、 $_REQUEST 以及 $_SESSION。
2、外部變數不再被預設註冊為全域性變數。也就是說,從 PHP ? 4.2.0 版開始,php.ini 中的設定選項 register_globals 預設值變成了 off。建議用以上提到的超全域性陣列變數來存取這些值。
但可能老的指令碼、書籍以及教學都可能建立在該設定為 on 的基礎上。如果該選項被設定為 on,則可以在 URL http://www.example.com/foo.php?id=42 中直接使用變數 $id。但不管被設定為 on 還是 off,$_GET['id'] 一直有效。
以上就是php向下相容嗎的詳細內容,更多請關注TW511.COM其它相關文章!