Rene: Zeichenketten brechen - Array Ausgabe

Beitrag lesen

Hallo,
Ich habe mir ein kleines php script gebastelt welches bei eingelesenen Zeichenketten, die laenger als ein vorgegebener Wert sind, Leerzeichen einfuegt.
Zum Beispiel gibt ein Benutzer auf meiner Seite so etwas wie: "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW" ein. Dieses wuerde mein Template auseinander nehmen :-)
...Daher versuche ich mit folgendem nach etwa 5 Zeichen ein Leerzeichen einzufuegen. Klappt soweit auch nur bei der Ausgabe klappt es irgendwie nicht so.

Code:

if (empty($txt)) return false;
       for ($c = 0, $a = 0, $g = 0; $c<strlen($txt); $c++)
          {
           $d[$c+$g]=$txt[$c];
           if ($txt[$c]!=" ")
   $a++;
           else
 if ($txt[$c]==" ")
    $a = 0;
           if ($a==5)
    {
                   $g++;
                   $d[$c+$g]=" ";
                   $a = 0;
                   }
           }

for($i=0; $i<=380; $i++)
{
echo"$d[$i]";
}

print_r($d);

Wenn ich jetzt zum Beispiel die Zeichenfolge 1234567890 erhalte ich fuer echo und print_r folgende Ergebnisse:

ECHO: 12345 67890
PRINT_R:  Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => [6] => 6 [7] => 7 [8] => 8 [9] => 9 [10] => 0 [11] => )

Das heisst bei der Echo for-schleife erziele ich den gewuenschten Effekt. Bei Print_r sieht das anders aus...da sind keine leerzeichen zu sehen.
Sollte das "array" denn nicht immer gleich aussehen? Egal ob mit echo oder print ausgegeben wird?

Vielen Dank
Rene