Mailinglisten-Archive |
> Ich benötige eine Funktion, die aus einem String, der einen > seitenlangen Text enthält, einen kürzeren String generiert, der eine > feste Anzahl an Zeichen (inkl. Leerzeichen) enthällt. > > linken. (z.B. 100 Zeichen vom Anfang des Textes an) entweder du machst das über substring: $teaser = substr($string,0,100); aber dabei riskierst du, dass du texte bekommst wie: "Die Silversternacht wird sehr anstre" sprich, substr schneidet halt nach 100 zeichen genau ab. oder du gehst so vor: $string_array = preg_split("/\s/",$string); // string zerlegen $zeichen = 100; // anzahl der zeichen für die ausgabe $nz = 1; // hier nix ändern for($i=0;$i<count($string_array);$i++){ if($nz <= $zeichen){ printf('%s ',$string_array[$i]); } else { break; } $nz += strlen($string_array[$i]); } jetzt wird der string einfach nicht abgeschnitten nach 100 zeichen, sondern die ganzen wörter bleiben erhalten ! kiri PS: ungetestet
php::bar PHP Wiki - Listenarchive