php: automatischer Zeilenumbruch
Spikx 23.01.2005 - 14:08 1357 21
Spikx
My Little Pwny
|
Suche eine einfache Möglichkeit in einem String automatisch ein space oder was auch immer einfügen zu lassen, wenn ein Wort eine gewisse Buchstabenanzahl überschreitet (zB für Gästebücher, wenn irgendwelche bösen Menschen laaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaange Wörter eingeben, die das html Konstrukt beeinflussen könnten).
Bearbeitet von Spikx am 23.01.2005, 23:14
|
CROWLER
Powerbunny
|
(afaik) wenn du den text in einem <td> ausgibst, wird der text automatisch umgebrochen
|
Spikx
My Little Pwny
|
(afaik) wenn du den text in einem <td> ausgibst, wird der text automatisch umgebrochen nope (außer man muss dafür irgendwas bestimmtes angeben, aber i habs an allen möglichen Stellen mit width= und width: ausprobiert)
|
COLOSSUS
AdministratorGNUltra
|
Serverseitig is da nicht allzu viel zu machen.... die CSS-Property "overflow:" solltest du dir aber mal anschaun.
|
CROWLER
Powerbunny
|
$text = wordwrap($text,"<br>",100,1); Die Funktion bricht in jedem Fall(1) nach 100 zeichen um. Wenn du die 1 weglässt schreibt er ein Wort was dann noch über die 100 Zeichen hinausgeht aus und bricht dann erst um. das is nicht auf meinem mist gewachsen : quelle : http://www.coding-board.de/board/ar...php/t-5030.html
|
Spikx
My Little Pwny
|
Serverseitig is da nicht allzu viel zu machen.... die CSS-Property "overflow:" solltest du dir aber mal anschaun. ja, kenn ich natürlich. Is aber net wirklich das Wahre, funktioniert außerdem bei Tabellen nicht (fall's man es dort brauchen würde). Wieso soll da serverseitig nicht viel zu machen sein? I könnt mir ja ganz einfach a Funktion schreiben, die die chars zählt und des dann entsprechend einbaut, aber i will net schon wieder das Rad neu erfinden $text = wordwrap($text,"<br>",100,1); Die Funktion bricht in jedem Fall(1) nach 100 zeichen um. Wenn du die 1 weglässt schreibt er ein Wort was dann noch über die 100 Zeichen hinausgeht aus und bricht dann erst um. Aah, thx, kannte ich nicht. Allerdings is es auch nicht ganz des was ich suche, da des nicht nur lange Wörter abtrennt sondern generell den ganzen String.
Bearbeitet von Spikx am 23.01.2005, 14:22
|
CROWLER
Powerbunny
|
ja, kenn ich natürlich. Is aber net wirklich das Wahre, funktioniert außerdem bei Tabellen nicht (fall's man es dort brauchen würde). Wieso soll da serverseitig nicht viel zu machen sein? I könnt mir ja ganz einfach a Funktion schreiben, die die chars zählt und des dann entsprechend einbaut, aber i will net schon wieder das Rad neu erfinden aah, thx, kannte ich nicht. ich hoffe es hat geholfen
|
Spikx
My Little Pwny
|
ich hoffe es hat geholfen naja, nicht ganz
|
CROWLER
Powerbunny
|
weil ?
|
Spikx
My Little Pwny
|
weil ? Allerdings is es auch nicht ganz des was ich suche, da des nicht nur lange Wörter abtrennt sondern generell den ganzen String.
|
CROWLER
Powerbunny
|
|
Spikx
My Little Pwny
|
Jo.. eh.. aber laut Beschreibung auf php.net bricht des eben nicht nur lange Wörter im String um, sondern zählt alle chars inklusive Spaces im String und bricht dort um. Was natürlich kontraproduktiv ist, wenn man den automatischen Umbruch vom Browser verwenden möchte (und lange Wörter werden eben net vom Browser umgebrochen, no na).
|
Rektal
Here to stay
|
Fuer Serverseitig muss das etwas "gschickter" angegangen werden. Ich hab letztens den Text nach Woertern gesplittet und bei langen Woertern dann einen Umbruch eingefuegt.
|
Spikx
My Little Pwny
|
Fuer Serverseitig muss das etwas "gschickter" angegangen werden. Ich hab letztens den Text nach Woertern gesplittet und bei langen Woertern dann einen Umbruch eingefuegt. ja so stell ich mir das auch vor. Man könnte zB einfach explode dafür nehmen, allerdings.. wenn man jetzt nach spaces exploded, bleiben Wörter, die nur durch '\n' getrennt sind trotzdem noch ein Wort.
|
watchout
Legendundead
|
mach ne regexp: preg_replace("/(\w{100,})/e","wordwrap('\\1',' ',100,1)"); sollte das Problem eigentlich lösen edit:hatte vergessen den wrap-char reinzuschreiben merkt euch bitte dass man den umbruch in solchen fällen nicht ERZWINGEN (mit <br /> sollte, sondern ihn nur ERMÖGLICHEN sollte (durch eine Trennung durch ein leerzeichen)
Bearbeitet von watchout am 23.01.2005, 18:39
|