av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

PHP基礎之運算符11——類型運算符

瀏覽:19日期:2022-09-14 15:11:23
instanceof?用于確定一個 PHP 變量是否屬于某一類?class?的實例:Example #1 對類使用?instanceof

<?php class MyClass { } class NotMyClass { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof NotMyClass);?>以上例程會輸出:bool(true)bool(false)instanceof 也可用來確定一個變量是不是繼承自某一父類的子類的實例:Example #2 對繼承類使用?instanceof

<?php class ParentClass { } class MyClass extends ParentClass { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof ParentClass);?>

以上例程會輸出:

bool(true)bool(true)檢查一個對象是否不是某個類的實例,可以使用邏輯運算符?not。Example #3 使用?instanceof?檢查對象不是某個類的實例

<?php class MyClass { } $a = new MyClass; var_dump(!($a instanceof stdClass));?>

以上例程會輸出:

bool(true)最后,instanceof也可用于確定一個變量是不是實現了某個接口的對象的實例:Example #4 對接口使用?instanceof

<?php interface MyInterface { } class MyClass implements MyInterface { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof MyInterface);?>以上例程會輸出:bool(true)bool(true)雖然?instanceof?通常直接與類名一起使用,但也可以使用對象或字符串變量:

<?php interface MyInterface { } class MyClass implements MyInterface { } $a = new MyClass; $b = new MyClass; $c = ’MyClass’; $d = ’NotMyClass’; var_dump($a instanceof $b); // $b is an object of class MyClass var_dump($a instanceof $c); // $c is a string ’MyClass’ var_dump($a instanceof $d); // $d is a string ’NotMyClass’?>

以上例程會輸出:

bool(true)bool(true)bool(false)如果被檢測的變量不是對象,instanceof 并不發出任何錯誤信息而是返回?FALSE。不允許用來檢測常量。Example #6 用?instanceof?檢測其它變量

<?php $a = 1; $b = NULL; $c = imagecreate(5, 5); var_dump($a instanceof stdClass); // $a is an integer var_dump($b instanceof stdClass); // $b is NULL var_dump($c instanceof stdClass); // $c is a resource var_dump(FALSE instanceof stdClass);?>

以上例程會輸出:

bool(false)bool(false)bool(false)PHP Fatal error: instanceof expects an object instance, constant given然而 instanceof 的使用還有一些陷阱必須了解。在 PHP 5.1.0 之前,如果要檢查的類名稱不存在,instanceof?會調用?__autoload()。另外,如果該類沒有被裝載則會產生一個致命錯誤。可以通過使用動態類引用或用一個包含類名的字符串變量來避開這種問題:Example #7 避免 PHP 5.0 中 instanceof 引起的類名查找和致命錯誤問題

<?php $d = ’NotMyClass’; var_dump($a instanceof $d); // no fatal error here?>

以上例程會輸出:

bool(false)

instanceof?運算符是 PHP 5 引進的。在此之前用?is_a(),但是后來?is_a()?被廢棄而用?instanceof?替代了。注意自 PHP 5.3.0 起,又恢復使用?is_a()?了。

標簽: PHP
相關文章:
主站蜘蛛池模板: 亚洲精品一区二区网址 | 久久精品一区二区三区四区 | 一级片网站视频 | 欧美精品久久久久久久久久 | 亚洲精品亚洲人成人网 | 日日夜夜精品免费视频 | 91麻豆精品国产91久久久久久久久 | 中文字幕在线不卡播放 | 欧美另类视频 | 久久精品视频9 | 亚洲aⅴ一区二区 | aaa级片 | av男人天堂影院 | 国产精品777一区二区 | 成人免费视频观看 | 欧美a视频 | 久草网站 | 国产精品综合久久 | 老头搡老女人毛片视频在线看 | 免费a网站 | 久久精品99国产精品 | 日韩三级在线观看 | 欧美日韩黄色一级片 | 男女一区二区三区 | 中文字幕国产精品 | 青青草av在线播放 | 亚洲天堂一区 | 国产精品一区二区日韩 | 成人在线观看欧美 | 久久精品国产亚洲一区二区 | 丁香五月网久久综合 | 欧美黑人狂野猛交老妇 | 玖玖视频网| 亚洲精品视频在线 | 精国产品一区二区三区四季综 | 成人精品免费 | 国产区在线| 国产91一区 | 成人黄色在线 | 国产精品久久久久久久久久免费 | 成人精品在线观看 |