人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

第11節--重載 -- Classes and Objects in PHP5 [11]

第11節--重載 -- Classes and Objects in PHP5 [11]

更新時間:2022-08-24 文章作者:未知 信息來源:網絡 閱讀次數:

第十一節--重載

PHP4中已經有了重載的語法來建立對于外部對象模型的映射,就像Java和COM那樣. PHP5帶來了強大的面向對象重載,允許程序員建立自定義的行為來訪問屬性和調用方法.

重載可以通過__get, __set, and __call幾個特殊方法來進行. 當Zend引擎試圖訪問一個成員并沒有找到時,PHP將會調用這些方法.

在例6.14中,__get和__set代替所有對屬性變量數組的訪問. 如果必要,你可以實現任何類型你想要的過濾. 例如,腳本可以禁止設置屬性值, 在開始時用一定的前綴或包含一定類型的值.

__call方法說明了你如何調用未經定義的方法. 你調用未定義方法時,方法名和方法接收的參數將會傳給__call方法, PHP傳遞__call的值返回給未定義的方法.

Listing 6.14 User-level overloading

<?php    class Overloader    {        private $properties = array();        function __get($property_name)        {            if(isset($this->properties[$property_name]))            {                return($this->properties[$property_name]);            }            else            {                return(NULL);            }        }        function __set($property_name, $value)        {            $this->properties[$property_name] = $value;        }        function __call($function_name, $args)        {            print("Invoking $function_name()<br>\n");            print("Arguments: ");            print_r($args);            return(TRUE);        }    }    $o = new Overloader();    //invoke __set() 給一個不存在的屬性變量賦值,激活__set()    $o->dynaProp = "Dynamic Content";    //invoke __get() 激活__get()    print($o->dynaProp . "<br>\n");    //invoke __call() 激活__call()    $o->dynaMethod("Leon", "Zeev"); ?> 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 常州市| 云南省| 玉树县| 巩留县| 赫章县| 阳曲县| 鄂托克前旗| 新龙县| 信丰县| 来凤县| 高青县| 曲沃县| 会理县| 上蔡县| 微博| 九寨沟县| 辽宁省| 蒲江县| 西昌市| 满洲里市| 历史| 新源县| 斗六市| 岳西县| 古蔺县| 曲水县| 历史| 西丰县| 朝阳区| 杭锦后旗| 军事| 雅江县| 长泰县| 政和县| 应用必备| 文山县| 同德县| 祁阳县| 崇仁县| 新巴尔虎左旗| 建始县|