程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php5.3 注意事項說明

php5.3 注意事項說明

編輯:關於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';

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved