These functions allow you to obtain information
about classes and instance objects. You can obtain the
name of the class to which a object belongs, as well as
its member properties and methods. Using these
functions, you can find out not only the class
membership of an object, but also its parentage (i.e.
what class is the object class extending).
In this example, we first define a base class and
an extension of the class. The base class describes a
general vegetable, whether it is edible or not and what
is its color. The subclass
Spinach adds a method to cook it and another to
find out if it is cooked.
We then instantiate 2 objects from these classes
and print out information about them, including their
class parentage. We also define some utility functions,
mainly to have a nice printout of the variables.
|
One important thing to note in the example above
is that the object $leafy is
an instance of the class
Spinach which is a subclass of Vegetable, therefore the last part of
the script above will output:
[...] Parentage: Object leafy does not belong to a subclass of Spinach Object leafy belongs to class spinach a subclass of Vegetable |