hallo..
ich habe das problem, dass ich strings wie diesen:
"blabla, 23, text, 45"
mit explode in die einzelnen teile zerlegen will.
nur werden mir oft die zahlen nicht angezeigt.
in diesem fall dann: "blabla" "23" "text" und die 45 ist verschwunden.
unterscheidet explode zwischen buchstaben und zahlen, oder ist das egal?
danke sehr
der quelltext dazu sieht so aus:
$zaehler = str_word_count($bildtext);
$array = explode(", ",$bildtext);
$i=0;
while($i //hier array ausgeben
$i++;
}
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Hallo,
Kann es sein, dass dein zaehler i noch eins weiter zählen muss?
Es fehlt der letzte Wert.
Gruss
ChrE
Arrays durchläuft man in PHP mit foreach, zumindest sollte man beim durchlaufen mit einer Zählschleife seinen Counter aus der tatsächlichen Anzahl der Elemente generieren, zudem ist while die schlechteste aller Schleifen die dafür geeignet sind. Ergo drei Wege wie man es sinnvoll löst:
1:
$array = explode ( ', ', $bildtext );
foreach ( $array as $value ) {
// hier $value ausgeben
}
2:
$array = explode ( ', ', $bildtext );
for ( $i = 0, $j = count ( $array ); $i // hier $array[$i] ausgeben
}
3: (wenn es schon while sein muss)
$array = explode ( ', ', $bildtext );
$zaehler = count ( $array );
$i = 0;
while ( $i // hier $array[$i] ausgeben
++$i;
}
danke sehr
zumindest sollte man beim durchlaufen mit einer Zählschleife seinen Counter aus der tatsächlichen Anzahl der Elemente generieren
habe ich doch auch (?)
mit count words.
ich werde es aber mal mit foreach versuchen.
vielen dank noch mal
Nein, hast Du nicht. Du hast die Funktion str_word_count auf den String angewendet, der macht jedoch nicht das, was Du meinst dass er tut. Schau Dir die Dokumentation der Funktion noch einmal an.