PHP代碼中常見"::"的運算子,這個是作用域限定運算符,它用來置頂類別中不通作用域的級別,左邊是作用域,右邊是訪問作用域的成員。
作用域限定運算子(也可稱為:範圍解析運算子)或更簡單地說是一對冒號,
可以用來存取靜態成員、方法和常數,也可以用來覆寫類別中的成員和方法。
在PHP中定義作用域的有self和parent,在PHP6中提供了static作用域。
self:表示目前類別的作用域,不能在類別之外的程式碼使用self,在擴充類別中使用self時,它呼叫的不是父類別的方法,而是擴展類別的重載方法。
parent:表示目前類別父類別的作用域。
<?php class forasp{ static $url="http://www.4u4v.cn"; static $webname = "网站制作学习之php双冒号"; public function writeurl(){ echo self::$url; //调用自己的内容 } public function writewebname(){ echo "测试子类调用父类内容"; } } class cn extends forasp{ function father(){ parent::wirtewebname(); } } $a = new forasp();//实例化父类 $a->writeurl();//调用自身内容 $b = new cn(); $b->writewebname();//调用父类内容 ?>
呼叫靜態方法的時,可以使用::呼叫類別中的靜態方法或屬性。
用法:
雙冒號運算子即作用域限定運算子Scope Resolution Operator可以存取靜態、const和類別中重寫的屬性與方法。
那麼,與箭頭->運算子 在應用上的差異在哪裡?
當在類別的外部存取這些靜態成員、方法和常數時,必須使用類別的名字。
雙冒號範圍解析運算子一般是用在靜態方法、靜態變數的調用,此時類別不需要實例化。
而用箭頭運算子->時,必須要將類別進行實例化(或在類別的內部呼叫也可以)。
以上是php中雙冒號::範圍解析運算子的意義介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!