05. januar 2005 - 19:56
Der er
16 kommentarer og 1 løsning
wordwrap udviklet?
Kan jeg på en måde for wordwrap til ikke at dele mine sætninger op.. Det er vildt træls at den ikke bare deler op i selve ordet men mellem alle ordene hvis jeg nu siger at den wordwrap(.....,"7",....); Så deler den jo for hvert femte tegn Hej hvo rdan gå r det? aaaaaaa aaaaaaa aaaaaaa Men kan jeg ikke få den til (eller med andet script) at gøre sådan her, hvor den kun deler lange ord Hej hvordan går det? aaaaaaa aaaaaaa aaaaaaa Forstår i?
Annonceindlæg fra Pax8
05. januar 2005 - 19:58
#1
ikke uden at dele din tekst op i et array for hvert ord, og så bedømme længende , for derefter at lave wordwrap. max besværligt.
05. januar 2005 - 20:00
#2
hmm.. er det noget du vil hjælpe mig med at lave, står og mangler det max meget ... :D
05. januar 2005 - 20:08
#3
Faktisk er der en masse løsninger, hvis du gider læse dokumentationen, og specielt kommentarene dertil:
http://se.php.net/wordwrap nr. 1 ser faktisk god ud.
05. januar 2005 - 20:12
#4
har nemlig også kigget på nr 1, lød perf. men, den siger bare at functionen imagettfbbox() ikke findes :(
05. januar 2005 - 20:14
#5
fordi at gdlib ikke er installeret på din server :P (dårlig server så!) ellers ser de andre (f.eks. den sidste ?-) også god ud
05. januar 2005 - 20:15
#6
eller mest genialt: "It is also possible to consider this function as a tool for making text wrappable rather than simply for forcing wrapping. In other words, use a space as the break - rather than "br /" or "p" or \n or whatever - and the text becomes wrappable. $input = "I want to annoy you by inserting long wooooooooooooooooooooooooooooooooorrrrrrdddss into your guestbook."; $output = wordwrap($input, 40, ' ', 1); Will insert spaces into the words longer than 40 characters make the text wrappable by the browser."
05. januar 2005 - 20:27
#7
Ja, men den indsætter jo i det hele taget hvis du skriver med ord længere end 5 tegn, så gør den jo sådan her hej h vad h edder du? Ser jo åndsvagt ud :p
05. januar 2005 - 20:33
#8
Hmm, er det ligeså brugervenligt at indsætte denne: $test=explode(' ',$info); $words=count($test); for ($i=0;$i<$words;$i++) { if(strlen($words[$i]) > 30) { echo "Ord må maks være på 30 tegn!\nFejl: $words[$i]"; } else { // KØR VIDERE } }
05. januar 2005 - 20:39
#9
hov, der er fejl i den, lige meget, retter selv, men er det ligeså brugervenligt?
05. januar 2005 - 20:40
#10
<? $info = "bla blaaaaaaaaaaaaaaaaaaaaaa bla bla"; $test=explode(' ',$info); $words=count($test); for ($i=0;$i<$words;$i++) { if(strlen($words[$i]) > 30) { echo wordwrap($word[$i], 30); } else { echo $word[$i]; } } ?> Ja, det burde kunne gøre arbejdet, ca. det jeg foreslog til at starte med, men ikke noget optimalt synes jeg. Og din problematik er faktisk underlig, da jeg ikke har oplevet php splitte små org, kun de helt lange, via. wordwrap (husket , 1 paramerert ?).
05. januar 2005 - 20:43
#11
hmm, kan man evt. tælle antal tegn i en streng?
05. januar 2005 - 20:47
#12
hov :S nu virker den wordwrap som den skal ? ved ikke lige hvad der skete, bruger denne kode: <? $besked = $_POST['besked']; $besked = str_replace("\n"," <br> ", $besked); $besked = wordwrap($besked, 10, ' ', 1); echo $besked; ?> <form action="" method="POST"> <textarea name="besked" cols="25" rows="6"></textarea> <input type="submit"> </form> Den giver det korrekte...
05. januar 2005 - 20:49
#13
Så bruger jeg den med mellemrum :D Hvadøhh... Smider du et lile svar :D?
05. januar 2005 - 20:51
#14
btw. $besked = str_replace("\n"," <br> ", $besked); = dårlig
www.php.net/nl2br er bedre, da den også er designet til formålet.
05. januar 2005 - 20:51
#15
Nej tak, samler ikke på point.
05. januar 2005 - 20:55
#16
ok :D
06. januar 2005 - 15:29
#17
hmm, forresten ville jeg gerne lige teste om det sker her på eksperten... prøver lige.. aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Vi tilbyder markedets bedste kurser inden for webudvikling