今天看江湖家居门户系统的源码,发现PHP类代码中常看到双冒号"::"操作符,这个是作用域限定操作符,是用一个双冒号"::"表示,它用来置顶类中不通作用域的级别。左边是作用域,右边是访问作用域的成员。
一,当调用静态属性和静态方法时
::与->的作用相同,只不过使用的对象不一样!::引用类里面的静态方法或者属性,而且不需要实例化!
建立一个类,并且建立一个静态属性$a,一个静态方法b,如下:- class test {
- static public $a;
- static public function b() {}
- }
复制代码如果要调用静态属性$a,如下 注意,a前面需要带$符号,这一点与->符号不一样! 如果要调用静态方法b,如下 二,当调用自身类或者父类的属性或者方法时
首先建立一个父类- class test {
- public function b() {}
- }
复制代码
然后建立一个子类继承父类
- class tests extends test {
- public function cs() {}
- }
复制代码
当我们需要调用父类的方法b时
当我们需要调用自身的方法cs时,有两种方法
我遇到的大概就是以上两种情况,如果大家还遇到什么其他的情况,欢迎回帖补充哈!
|