I have a class that is basically a wrapper to an Array and implements IteratorAggregate. When a new object of the class is created, it stores it's value in a protected variable called $value. The value can be a string, integer, etc.. or a traversable object (like an array).I have a class that is basically a wrapper to a