色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP使用靜態(tài)方法的幾個注意事項

本文實例介紹了php使用靜態(tài)方法的幾個常見注意事項。分享給大家供大家參考。具體方法如下:

1. 即使類中的方法并未用static聲明,但其未使用到可改變的類成員變量,在外部仍可用操作符::來調(diào)用

2. 以靜態(tài)方式(用::操作符)調(diào)用的方法中$this的取值是由調(diào)用時的上下文決定的!而不是定義他的類!!

例如以下的代碼:

<?php class TestClass1 {   public $normal_v = 'normal_v from TestClass1';   public static $STATIC_V = 'STATIC_V from TestClass1';   public function test_func1()   {     echo $this->normal_v.'<br />'.self::$STATIC_V;   } } class TestClass2 {   public $normal_v = 'normal_v from TestClass2';   public static $STATIC_V = 'STATIC_V from TestClass2';   public function test_func2()   {     TestClass1::test_func1();   } } $t2 = new TestClass2(); $t2->test_func2(); 

這段代碼是輸出會是什么呢,我原以為會是normal_v from TestClass1 <br /> STATIC_V from TestClass1,測試發(fā)現(xiàn)其實我錯了,正確的輸出是:

normal_v from TestClass2
STATIC_V from TestClass1

說明:test_func1()雖然是在TestClass1中定義的,但卻是在TestClass2中調(diào)用的,其內(nèi)部的$this變量則是由TestClass2決定的!

其實這兩個類的關(guān)系應(yīng)該屬于"雙向關(guān)聯(lián)".

感興趣的朋友可以測試運行本文實例,相信會有新的收獲!

php技術(shù)PHP使用靜態(tài)方法的幾個注意事項,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 望都县| 贵阳市| 天镇县| 广西| 垣曲县| 合阳县| 泰兴市| 宝丰县| 永丰县| 彭山县| 衡阳市| 镇安县| 孟村| 乌鲁木齐市| 德昌县| 凤山县| 新化县| 若尔盖县| 红原县| 开鲁县| 莱州市| 南投市| 广饶县| 潞西市| 专栏| 木里| 海原县| 洛浦县| 吴堡县| 阳江市| 登封市| 乌兰浩特市| 利津县| 文化| 咸丰县| 邢台市| 竹山县| 伊宁市| 石台县| 张家界市| 宝鸡市|