PHP語言類型運算符
運算符,用于執(zhí)行程序代碼運算,會針對一個以上操作數(shù)項目來進行運算。下面是關于PHP中類型運算符的介紹, 希望對大家有所幫助,更多消息請關注應屆畢業(yè)生網(wǎng)。
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 也可用來確定一個變量是不是繼承自某一父類的子類的實例: can also be used to determine whether a variable is an instantiated object of a class that inherits from a parent class:
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也可用于確定一個變量是不是實現(xiàn)了某個接口的對象的實例:
Example #4 Using instanceof for class
<?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 通常直接與類名一起使用,但也可以使用對象或字符串變量:
Example #5 Using instanceof with other variables
<?php
interface MyInterface
{
}
class MyClass implements MyInterface
{
}
$a = new MyClass;
$b = new MyClass;
$c = 'MyClass';
$d = 'NotMyClass';
var_dump($a instanceof $b); /pic/div>
var_dump($a instanceof $c); /pic/div>
var_dump($a instanceof $d); /pic/div>
?>
以上例程會輸出:
bool(true) bool(true) bool(false)
然而 instanceof 的使用還有一些陷阱必須了解。在 PHP 5.1.0之前,如果要檢查的類名稱不存在,instanceof 會調(diào)用 __autoload()。另外,如果該類沒有被裝載則會產(chǎn)生一個致命錯誤?梢酝ㄟ^使用動態(tài)類引用(dynamic class reference)或用一個包含類名的字符串變量來避開這種問題:
Example #6 避免 PHP 5.0 中 instanceof 引起的類名查找和致命錯誤問題
<?php
$d = 'NotMyClass';
var_dump($a instanceof $d); /pic/div>
?>
以上例程會輸出:
bool(false)
instanceof 運算符是 PHP 5 引進的。在此之前用 is_a(),但是 is_a() 已經(jīng)過時了,最好用instanceof。
【PHP語言類型運算符】相關文章:
PHP語言:數(shù)組運算符07-20
PHP語言的數(shù)字類型08-06
PHP語言:數(shù)據(jù)類型02-10
PHP 數(shù)據(jù)類型03-12
PHP的數(shù)據(jù)類型10-14
PHP變量類型和整型類型細節(jié)02-05
java語言運算符08-31
PHP開發(fā)之運算符使用介紹11-12
php入門知識:運算符使用介紹10-28
- 相關推薦