php5.3 注意事项说明

前端之家收集整理的这篇文章主要介绍了php5.3 注意事项说明前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

PHP5.3
新特性

支持命名空间(namespace)
5.3以前

代码如下:
PHP
class Zend_Db_Table_Select {
//表示当前这个类文件位于Zend/Db/Table下
}

5.3

代码如下:
PHP
namespace Zend/Db/Table
class Select {
}

支持延迟静态绑定
5.3以前(__CLASS__获得类名)self::who()

代码如下:
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();

代码如下:
PHP
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();
?>

输出B


支持goto语句

多数计算机程序设计语言中都支持无条件转向语句goto,当程序执行到goto语句时,即转向由goto语句中的标号指出的程序位置继续执行。


支持闭包

代码如下:
PHP
$msg = "hello";
$callback = function() use($msg){
print_r($msg);
}
$msg = "hello world!";
callback($callback);

输出

hello
hello world!

方法__callStatic()

PHP中原本有一个魔术方法__call(),当代码调用对象的某个不存在的方法时该魔术方法会被自动调用
新增的__callStatic()方法则只用于静态类方法。当尝试调用类中不存在的静态方法时,__callStatic()魔术方法将被自动调用

代码出错,如undefined HE,你要看看是否支持const)

代码如下:
PHP
const CONSTANT = 'Hello World';

猜你在找的PHP相关文章