Domanda secca, il metodo magico __toString() può tornare un array?

Codice PHP:
class {
  
$foo = array();

  function 
__construct() {
    for (
$i 0$i <= 10$i++) $this->foo[$i] = (string)$i;
  }

  function 
__toString() {
  return 
$this->foo;
  }
}

$baz = new A();
foreach (
$baz as $b) echo $b
Tanto per fare al volo, la classe di cui qui sopra può funzionare? A me non sta restituendo nulla, blocca l'esecuzione dello script ma non da neppure errore.
Qualcuno mi sa rispondere cortesemente?