# L'interface Traversable

(PHP 5, PHP 7, PHP 8)

## Introduction

Interface permettant de détecter si une classe peut être parcourue en utilisant `foreach`.

L'interface de base est abstraite et ne peut être implémentée seule. Elle doit être implémentée par soit IteratorAggregate, soit Iterator.

## Sommaire de l'Interface

interface Traversable {
}

Cette interface n'a pas de méthode ; son seul but est d'être l'interface de base pour toutes les classes permettant de parcourir des objets.

## Historique

Version | Description
--- | ---
7.4.0 | L'interface Traversable peut désormais être implémenté par des classes abstraites. Les classes étendant cele-ci doivent implémenter soit Iterator ou IteratorAggregate.

## Notes

> Note:

> Les classes internes qui implémentent cette interface peuvent être utilisées dans un constructeur `foreach` et n'ont pas besoin d'implémenter IteratorAggregate ou Iterator.

> Note:

> Antérieur à PHP 7.4.0, cette interface interne au moteur ne pouvait pas être implémentée dans des scripts PHP. Soit IteratorAggregate ou Iterator doit être utilisé à la place.