php5.3和php5.4的區別:1、php5.4增加了陣列的簡寫形式;2、php5.4增加了Traits;3、自php5.4開始,內建一個輕量級的web伺服器;4、php5.4新增了動態存取靜態方法的方式。
1、Short Open Tag 自 PHP5.4 起總是可用
(推薦教學:)
在這裡集中講一下有關 PHP 起止標籤的問題。即:
<?php // Code... ?>
通常就是上面的形式,除此之外還有一種簡寫形式:
<? /* Code... */ ?>
還可以把
<?php echo $xxoo;?>
簡寫成:
<?= $xxoo;?>
這種簡寫形式被稱為 Short Open Tag, 在 PHP5.3 起被預設開啟,在 PHP5.4 起總是可用。使用這種簡寫形式在 HTML 中嵌入 PHP 變數將會非常方便。
對於純 PHP 檔案(如類實現檔案), PHP 官方建議頂格寫起始標記,同時 省略 結束標記。這樣可以確保整個 PHP 檔案都是 PHP 程式碼,沒有任何輸出,否則當你包含該檔案後,設定 Header 和 Cookie 時會遇到一些麻煩
注:Header 和 Cookie 必須在輸出任何內容之前被傳送。
2、陣列簡寫形式
這是非常方便的一項特徵!
// 原來的陣列寫法 $arr = array("key" => "value", "key2" => "value2"); // 簡寫形式 $arr = ["key" => "value", "key2" => "value2"];
3、Traits
所謂Traits就是「構件」,是用來替代繼承的一種機制。PHP中無法進行多重繼承,但一個類可以包含多個Traits.
// Traits不能被單獨範例化,只能被類所包含 trait SayWorld { public function sayHello() { echo 'World!'; } } class MyHelloWorld { // 將SayWorld中的成員包含進來 use SayWorld; } $xxoo = new MyHelloWorld(); // sayHello() 函數是來自 SayWorld 構件的 $xxoo->sayHello();
Traits還有很多神奇的功能,比如包含多個Traits, 解決衝突,修改存取許可權,為函數設定別名等等。
4、內建 Web 伺服器
PHP從5.4開始內建一個輕量級的Web伺服器,不支援並行,定位是用於開發和偵錯環境。
在開發環境使用它的確非常方便。
php -S localhost:8000
這樣就在當前目錄建立起了一個Web伺服器,你可以通過 http://localhost:8000/ 來存取。
其中localhost是監聽的ip,8000是監聽的埠,可以自行修改。
很多應用中,都會進行URL重寫,所以PHP提供了一個設定路由指令碼的功能:
php -S localhost:8000 index.php
這樣一來,所有的請求都會由index.php來處理。
你還可以使用 XDebug 來進行斷點偵錯。
5、細節修改
PHP5.4 新增了動態存取靜態方法的方式:
$func = "funcXXOO"; A::{$func}();
新增在範例化時存取類成員的特徵:
(new MyClass)->xxoo();
新增支援對函數返回陣列的成員存取解析(這種寫法在之前版本是會報錯的):
print func()[0];
相關推薦:
以上就是php5.3和php5.4有什麼區別的詳細內容,更多請關注TW511.COM其它相關文章!