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和类中重写的属性与方法。
那么,与箭头->操作符 在应用上的区别在哪里?
当在类的外部访问这些静态成员、方法和常量时,必须使用类的名字。
双冒号范围解析操作符一般是用在静态方法、静态变量的调用,此时类不需要实例化。
而用箭头操作符->时,必须要将类进行实例化(或者在类的内部调用也可以)。
Atas ialah kandungan terperinci php中双冒号::范围解析操作符的含义介绍. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!