If Iterator::valid() returns false, the foreach() loop will be terminated.
(PHP 5, PHP 7, PHP 8)
Iterator::valid — Prüft, ob die aktuelle Position zulässig ist
Diese Methode wird nach Iterator::rewind() und Iterator::next() aufgerufen, um zu prüfen, ob die aktuelle Position zulässig ist.
Diese Funktion besitzt keine Parameter.
Der Rückgabewert wird in den Typ bool umgewandelt und dann
ausgewertet.
Gibt bei Erfolg true
zurück. Bei einem Fehler wird false
zurückgegeben.
If Iterator::valid() returns false, the foreach() loop will be terminated.
If your class implements also ArrayAccess interface, you could use as valid() body
function valid(){
return $this->offsetExists($this->position);
}