|
php5.3
新特性
1.支持命名空間(namespace)
5.3以前
復(fù)制代碼 代碼如下:
<?php
class Zend_Db_Table_Select {
//表示當(dāng)前這個(gè)類文件位于Zend/Db/Table下
}
5.3
復(fù)制代碼 代碼如下:
<?php
namespace Zend/Db/Table
class Select {
}
2.支持延遲靜態(tài)綁定
5.3以前(__CLASS__獲得類名)self::who()
復(fù)制代碼 代碼如下:
<?php
class A {
public static function who() {
echo __CLASS__;
}
public static function test() {
self::who();
}
}
class B extends A {
public static function who() {
echo __CLASS__;
}
}
B::test();
?>
輸出A
5.3(__CLASS__獲得類名)static::who();
復(fù)制代碼 代碼如下:
<?php
class A {
public static function who() {
echo __CLASS__;
}
public static function test() {
static::who(); // 這里實(shí)現(xiàn)了延遲的靜態(tài)綁定
}
}
class B extends A {
public static function who() {
echo __CLASS__;
}
}
B::test();
?>
輸出B
3.支持goto語句
多數(shù)計(jì)算機(jī)程序設(shè)計(jì)語言中都支持無條件轉(zhuǎn)向語句goto,當(dāng)程序執(zhí)行到goto語句時(shí),即轉(zhuǎn)向由goto語句中的標(biāo)號指出的程序位置繼續(xù)執(zhí)行。
4.支持閉包
復(fù)制代碼 代碼如下:
<?php
$msg = "hello";
$callback = function() use($msg){
print_r($msg);
}
$msg = "hello world!";
callback($callback);
輸出
hello
hello world!
5.新增魔術(shù)方法__callStatic()
php中原本有一個(gè)魔術(shù)方法__call(),當(dāng)代碼調(diào)用對象的某個(gè)不存在的方法時(shí)該魔術(shù)方法會被自動調(diào)用。
新增的__callStatic()方法則只用于靜態(tài)類方法。當(dāng)嘗試調(diào)用類中不存在的靜態(tài)方法時(shí),__callStatic()魔術(shù)方法將被自動調(diào)用。
6.新增一種常量定義方式(有時(shí)代碼出錯(cuò),如undefined HE,你要看看是否支持const)
復(fù)制代碼 代碼如下:
<?php
const CONSTANT = 'Hello World';
php技術(shù):php5.3 注意事項(xiàng)說明,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。