php5.3 注意事项说明

yipeiwu_com7年前PHP代码库

php5.3
新特性
1.支持命名空间(namespace)
5.3以前

复制代码 代码如下:

<?php
class Zend_Db_Table_Select {
//表示当前这个类文件位于Zend/Db/Table下
}

5.3
复制代码 代码如下:

<?php
namespace Zend/Db/Table
class Select {
}

2.支持延迟静态绑定
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
 
3.支持goto语句
多数计算机程序设计语言中都支持无条件转向语句goto,当程序执行到goto语句时,即转向由goto语句中的标号指出的程序位置继续执行。
 
4.支持闭包
复制代码 代码如下:

<?php
$msg = "hello";
$callback  =  function() use($msg){
    print_r($msg);
}
$msg = "hello world!";
callback($callback);

输出
hello
hello world!

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

6.新增一种常量定义方式(有时代码出错,如undefined HE,你要看看是否支持const)

复制代码 代码如下:

<?php
const CONSTANT = 'Hello World';

相关文章

PHP的Json中文处理解决方案

本文讲述了PHP的Json中文处理解决方案。分享给大家供大家参考,具体如下: Json是现在被广泛使用的用于传递字符串的格式,相比xml更显得简单易懂以及更方便操作,php下就俩个函数,...

PHP5全版本绕过open_basedir读文件脚本漏洞详细介绍

PHP5全版本绕过open_basedir读文件脚本漏洞详细介绍

漏洞很久之前(大概5年前)被提出来了,但并不是php代码上的问题,所以问题一直存在,直到现在。我一直没留意,后来yaseng告诉我的,他测试了好像5.5都可以。 漏洞详情在这里 http...

PHP 字符串 小常识

注意转义字符\的使用\\,\",\$ 注意使用8进制或16进制字符表示 \xf6 echo "H\xf6me";//需要察看是否支持此类文字编码 --------------------...

php fread读取文件注意事项

php fread函数介绍 string fread ( int handle, int length ) fread() 从文件指针 handle 读取最多 length 个字节。...

编写PHP脚本使WordPress的主题支持Widget侧边栏

编写PHP脚本使WordPress的主题支持Widget侧边栏

帮网友小改了一下主题. 任务比较简单, 只是为一个三栏主题添加对 Widget 的支持而已,就先从这次简单的案例开始说吧. 单侧边栏 functions.php <?...