本文总结分析了PHP5.3新特性。分享给大家供大家参考,具体如下:
1、命名空间 解决了类,函数和常量名冲突的问题
2、静态绑定 继承时父类可以直接调用子类重写父类的方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
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),允许 临时创建一个没有指定名称的函数。最经常用作回调函数
1
2
3
|
//匿名函数做回调函数
uasort( $arr , function ( $a , $b ){
})
|
闭包函数也可以作为变量的值来使用
1
2
3
4
|
$fn = function ( $a ) {
echo $a ;
};
$fn (1);
|
PHP会自动把表达式转换成内置类Closure的 对象实例
1
2
3
4
5
6
7
8
9
10
11
12
13
|
$fn = function ( $a ) {
echo $a ;
};
ee( $fn );
/**
* Closure Object
(
[parameter] => Array
(
[$a] =>
)
)
*/
|
匿名函数目前是通过Closure类来实现的。目前还不稳定,不适用于正式开发
3、?: 操作符
1
2
3
|
$a = 0;
$b = 2;
ee( $a ?: $b ); # 2 类似js中的 ||
|
4、新增常量 __DIR_
5、新的垃圾回收机制,解决了循环引用的问题
1
2
3
|
gc_enable(); // 激活循环引用收集器,默认开启
var_dump(gc_collect_cycles()); // 强制回收已无效的变量
gc_disable(); // 禁用GC
|
希望本文所述对大家PHP程序设计有所帮助。