上一篇文章中我們了解了遞減運(yùn)算符,有需要的請(qǐng)看《你知道++這個(gè)運(yùn)算符嗎?》。這次我們向大家介紹另外一種運(yùn)算符,類型運(yùn)算符,有需要的可以參考參考。
當(dāng)我們看到這篇文章的時(shí)候,會(huì)不會(huì)感到奇怪,php中有類型運(yùn)算符嗎?那是什么東西?能干什么用?今天我們就來看看這個(gè)運(yùn)算符到底能干什么。
類型運(yùn)算符指的是instanceof。instanceof運(yùn)算符是php5引進(jìn)的。在此之前用is_a(),但是is_a()已經(jīng)過時(shí)了,最好用instanceof。
我們來看一個(gè)小例子,學(xué)習(xí)這個(gè)運(yùn)算符吧。
<?php class other { } class another { } $a = new other; var_dump($a instanceof other); var_dump($a instanceof another); ?>
這個(gè)例子的結(jié)果是
這個(gè)結(jié)果挺有意思的,只存在true和false兩種可能性,再去看看代碼,它先定義了兩個(gè)類,然后$a是other,接著就是問$a是不是屬于這個(gè)類的,感覺這段代碼是這個(gè)意思啊。
那我們來看看是不是這個(gè)意思,詳細(xì)介紹一下這個(gè)運(yùn)算符。
instanceof 用于確定一個(gè) PHP 變量是否屬于某一類class的實(shí)例。如果屬于返回true,如果不屬于則返回false。
既然這個(gè)應(yīng)用我們已經(jīng)看過了,來看這個(gè)運(yùn)算符的另一種用法。
看先例子吧。
<?php interface other { public function cmcc(); } class ExampleClass implements other { public function cmcc() { return 'Hello World!'; } } $exampleInstance = new ExampleClass(); if($exampleInstance instanceof other){ echo '是的,它實(shí)現(xiàn)了!'; }else{ echo '不,它沒有實(shí)現(xiàn).'; } ?>
這個(gè)例子的結(jié)果是
這個(gè)例子的結(jié)果也只有兩種,一種就是“確定”,另外一種就是“否定”。不外乎是這兩種結(jié)果。我們來看看這個(gè)運(yùn)算符的另一種用法吧。
這個(gè)運(yùn)算符可以用來判斷一個(gè)對(duì)象是否實(shí)現(xiàn)了某個(gè)接口。如果屬于返回true,如果不屬于則返回false。很顯然這個(gè)例子表明這個(gè)對(duì)象實(shí)現(xiàn)了某個(gè)接口。
就說到這里了,有其他想知道的,可以點(diǎn)擊這個(gè)哦?!?→php視頻教程