(PHP 5, PHP 7, PHP 8)
Interface to detect if a class is traversable using foreach.
Abstract base interface that cannot be implemented alone. Instead, it must be implemented by either IteratorAggregate or Iterator.
This interface has no methods; its only purpose is to be the base interface for all traversable classes.
| Version | Description |
|---|---|
| 8.0.0 | The Traversable interface can now be implemented by abstract classes. Extending classes must implement Iterator or IteratorAggregate. |
Note:
Internal (built-in) classes that implement this interface can be used in a
foreachconstruct and do not need to implement IteratorAggregate or Iterator.
Note:
Prior to PHP 8.0.0, this internal engine interface couldn't be directly implemented in PHP scripts — not even by abstract classes. Either IteratorAggregate or Iterator must be used instead.