本文總結分析了PHP5.3新特性。分享給大家供大家參考,具體如下:
1、命名空間 解決了類,函數和常量名沖突的問題
2、靜態綁定 繼承時父類可以直接調用子類重寫父類的方法
class A {
public static function who() {
echo __CLASS__;
}
public static function test() {
static::who(); // 後期靜態綁定從這裡開始
}
}
class B extends A {
public static function who() {
echo __CLASS__;
}
}
B::test();
3、匿名函數,也叫閉包函數(closures),允許 臨時創建一個沒有指定名稱的函數。最經常用作回調函數
//匿名函數做回調函數
uasort($arr ,function($a, $b){
})
閉包函數也可以作為變量的值來使用
$fn = function ($a) {
echo $a;
};
$fn(1);
PHP會自動把表達式轉換成內置類Closure的 對象實例
$fn = function ($a) {
echo $a;
};
ee($fn);
/**
* Closure Object
(
[parameter] => Array
(
[$a] =>
)
)
*/
匿名函數目前是通過Closure類來實現的。目前還不穩定,不適用於正式開發
3、?: 操作符
$a = 0; $b = 2; ee($a ?: $b); # 2 類似js中的 ||
4、新增常量 __DIR_
5、新的垃圾回收機制,解決了循環引用的問題
gc_enable(); // 激活循環引用收集器,默認開啟 var_dump(gc_collect_cycles()); // 強制回收已無效的變量 gc_disable(); // 禁用GC
更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP基本語法入門教程》、《PHP錯誤與異常處理方法總結》及《php常用函數與技巧總結》
希望本文所述對大家PHP程序設計有所幫助。