3.11. instanceof Operator
The instanceof operator was added as syntactic sugar instead of the already existing is_a() built-in function (which is now deprecated). Unlike the latter, instanceof is used like a logical binary operator:
class Rectangle { public $name = __CLASS__; } class Square extends Rectangle { public $name = __CLASS__; } class Circle { public $name = __CLASS__; } function checkIfRectangle($shape) { if ($shape instanceof Rectangle) { print $shape->name; print " is a rectangle\n"; } } checkIfRectangle(new Square()); checkIfRectangle(new Circle());
This small program prints 'Square is a rectangle\n'. Note the use of __CLASS__, which is a special constant that resolves to the name of the current class.
As previously mentioned, ...
Get PHP 5 Power Programming now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.