October 2005
Intermediate to advanced
372 pages
11h 35m
English
There are three particular OOP
-related functions
that will make your life easier, and these are class_exists(), get_class(), and get_declared_classes(). In order, class_exists() returns true if the specified class has been declared, get_class() returns the class name of the object you pass to it, and get_declared_classes() returns an array of all classes of which you can currently create an object.
Here are some examples:
if ($foo = = $bar) {
$sam = new Employee;
} else {
$sam = new Dog;
}
print "Sam is a " . get_class($sam) . "\n";
print "Class animal exists: " . class_exists("animal") . "\n\n\n\n";
print "All declared classes are: " . get_declared_classes() . "\n";The most common use for get_class() is when one object can be of several possible types, as in the code above. C++ users will be familiar with the concept of Runtime Type Information (RTTI), and this is pretty much the same thing.