總的來說php中instanceof 與 is_a()功能是一樣的,不同的是由於PHP的版本不同,部分PHP版本捨棄了is_a() 下面我們來具體分析下吧。
instanceof 運算符 和 is_a() 方法都是判斷:某對象是否屬於該類 或 該類是此對象的父類(用於確定一個 PHP 變量是否屬於某一類 class 的實例)
是的話返回 TRUE,不是的話返回 FALSE
區別:
instanceof 運算符是 PHP 5 引進的。在此之前用 is_a(),但是後來 is_a() 被廢棄而用 instanceof 替代了。
注意:
PHP 5.3.0 起,又恢復使用 is_a() 了。
總結:
現在PHP的服務環境普遍都使用PHP5.0+了,所以盡量使用 instanceof 來代替 is_a()
綜上,如果你不知道你的服務器環境,那麼建議你使用instanceof,以免造成不必要的麻煩