Home >Backend Development >PHP Tutorial >PHP中双冒号:的用法

PHP中双冒号:的用法

WBOY
WBOYOriginal
2016-06-13 12:26:561201browse

PHP中双冒号::的用法

 前几天在百度知道里面看到有人问PHP中双冒号::的用法,当时给他的回答比较简洁因为手机打字不大方便!今天突然想起来,所以在这里总结一下我遇到的双冒号::在PHP中使用的情况!

 

PHP中双冒号::的用法

 

    一,当调用静态属性和静态方法时

    ::与->的作用相同,只不过使用的对象不一样!::引用类里面的静态方法或者属性,而且不需要实例化!

    建立一个类,并且建立一个静态属性$a,一个静态方法b,如下:

<span style="color: #0000ff;">class</span><span style="color: #000000;"> test {    </span><span style="color: #0000ff;">static</span> <span style="color: #0000ff;">public</span> <span style="color: #800080;">$a</span><span style="color: #000000;">;    </span><span style="color: #0000ff;">static</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> b() {}}</span>


    如果要调用静态属性$a,如下

test::<span style="color: #800080;">$a</span>;

 

    注意,a前面需要带$符号,这一点与->符号不一样!

    如果要调用静态方法b,如下

test::b();


    
二,当调用自身类或者父类的属性或者方法时 

    首先建立一个父类

<span style="color: #0000ff;">class</span><span style="color: #000000;"> test {    </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> b() {}}</span>

    然后建立一个子类继承父类

<span style="color: #0000ff;">class</span> tests <span style="color: #0000ff;">extends</span><span style="color: #000000;"> test {    </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> cs() {}}</span>

    当我们需要调用父类的方法b时

parent::b();
    当我们需要调用自身的方法cs时,有两种方法
self::cs();
<span style="color: #800080;">$this</span>->cs();


    我遇到的大概就是以上两种情况,如果大家还遇到什么其他的情况,欢迎来王业楼的个人博客补充哈!
 

  想要每天及时获取王业楼的个人博客更新的内容吗?赶快添加微信公众号“ly89cn”,或者扫描下方的二维码吧!

本文来源于王业楼的个人博客,本文地址:http://www.ly89.cn/detailB/57.html

欢迎分享本文,转载请注明本文出处和地址

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn