Mailinglisten-Archive |
Hallo Leute, ich brauche ein wenig Hilfe... habe ich einen Text in einem String. Der Text soll auf einer HTML-Seite angezeigt werden. Damit die Seite nicht horizontal gescrollt werde muss, will ich sicherstellen, daß spätestens alle - sagen wir 60 - Zeichen ein Leerzeichen stehen muß; nur so können die Browser ja einen Umbruch einfügen. Nun, das ganze findet auch noch auf einer recht gut besuchten Site statt ;-) Was ich jetzt (als C-Fanatiker) gemacht hätte, wäre in etwa <C Code> char *p = "Der Text"; int c = 0; while (*p) { if (*p == ' ') c = 0; else ++c; putc(*p++); if (c == 60) { putc(' '); c = 0; } } </C Code> Mein Versuch, sowas auf PHP zu übertragen (mit einer for-Schleife, die der Reihe nach alle Zeichen des Textes über $p[$i] referenziert) scheiterte kläglich - die Performance brach total zusammen. Ich schließe daraus, daß es wohl etwas aufwendiger ist, einen Port des obigen Codes in PHP auszuführen als die pure C-Version. Was ich also bräuchte wären Hinweise, wie man obiges Snippet performant und optimal in PHP schreiben würde. Ist es für PHP intern einfacher, eine Regex das ganze machen zu lassen? Wie müßte die überhaupt aussehen? (-> Ich bekomme sie nicht hin.) Macht es Sinn, z.b. strpos (ich glaube doch, das war es) zu verwenden, um die Leerzeichen zu finden, anstelle das selber in PHP zu machen? Ich nehme an, daß eine solche Suche intern performanter ist als in PHP-Skriptsprache? Die Funktion chunk_split ist ja auch nocht nicht so ganz, was ich brauche, kommt aber in die Nähe... Danke für Eure Mühen! Matthias -- w e b f a c t o r y | matthias pigulla www.webfactory.de mp_(at)_webfactory.de
php::bar PHP Wiki - Listenarchive