php使用靜態(tài)方法的幾個注意事項
來源:易賢網 閱讀:895 次 日期:2014-10-20 15:44:58
溫馨提示:易賢網小編為您整理了“php使用靜態(tài)方法的幾個注意事項”,方便廣大網友查閱!

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

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

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

例如以下的代碼:

<?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中調用的,其內部的$this變量則是由testclass2決定的!

其實這兩個類的關系應該屬于雙向關聯(lián).

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

更多信息請查看IT技術專欄

更多信息請查看網絡編程
關于我們 | 聯(lián)系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網