Non sto mettendo in dubbio la funzionalità del punto. Volevo solo dire che il . non è un operatore logicio, ma un operatore di stringa. Che concateni non c'è alcun dubbio, ma forse non hai ben compreso la mia domanda circa la variabile $output.
La prima volta che il ciclo passa per la variabile $output .=... non avrebbe bisogno in teoria del punto di concatenamento perché non deve concatenare nulla. Solo dal secondo passaggio necessita di concatenare. Sbaglio?