Please note that you have to fully qualify the class name in the second parameter. A use statement will not resolve namespace dependencies in that is_a() function. <?php namespace foo\bar;class A {};class B extends A {};?><?phpnamespace har\var;use foo\bar\A;$foo = new foo\bar\B();is_a($foo, 'A'); // returns false;is_a($foo, 'foo\bar\A'); // returns true;?>Just adding that note here because all examples are without namespaces.