![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 28.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Napisalem sobie funkcje do przycinania tekstu, chodzilo mi o to, ze chce miec tekst dlugosci 50 znakow, ale jesli 50 znak to nie spacja, to zeby wyraz zostal dokonczony i dopiero po wyrazie ucieta reszta tekstu. Funkcja dziala dobrze, tyle tylko ze jesli puszcze ja w petli, np. 30 powtorzen roznej dlugosci tekstow, to czasem strasznie zwalnia. Mozecie rzucic na nia okiem? [php:1:1ea3ca8f9d]<?php function strpad($string, $length, $end = '...') { $padded_string = ''; if( strlen($string) < $length ) { $padded_string = $string; } else { if( $string[$length] == chr(32) ) { $padded_string = str_pad($string, $length+1); } else { for( $i=0; $i<($length); $i++ ) { $padded_string .= $string[$i]; } while( strpos( $string[$length], " ")===false ) { $padded_string .= $string[$length]; $length++; } $padded_string .= $end; } } return $padded_string; } ?>[/php:1:1ea3ca8f9d] |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 701 Pomógł: 0 Dołączył: 26.06.2002 Skąd: Londyn Ostrzeżenie: (0%) ![]() ![]() |
nie lepiej uzyc tego
[php:1:97d6af7d84]<?php $string = "Winamp is now freeware! Thanks to all who have previously registered, your support is really appreciated!"; function string_cut( $string, $cut_size ) { $StringArray = explode( " ", $string ); for( $i = 0; $i < $cut_size; $i++ ) { $string_cut .= " "." $StringArray[$i]"; } return "$string_cut"."..."; } $string = ""; echo string_cut( $string, 8 ); ?>[/php:1:97d6af7d84] przyklad z zend.com -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 28.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Rzeczywiscie, lepsze rozwiazanie
![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 362 Pomógł: 0 Dołączył: 18.02.2004 Skąd: Knurów Ostrzeżenie: (0%) ![]() ![]() |
Jeszcze krótsze:
[php:1:e4eef99681] <? function skr_dane($tekst, $il_znakow) { if (strlen($tekst) > $il_znakow) return substr($tekst, 0, strrpos(substr($tekst, 0, $il_znakow), " ")).' ...'; else return $tekst; } echo skr_dane($tekst,50); ?> [/php:1:e4eef99681] |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 223 Pomógł: 0 Dołączył: 13.01.2003 Skąd: 3rd ball of mud behind a big ball of burning gas Ostrzeżenie: (0%) ![]() ![]() |
[manual:27523dca2e]Wordwrap[/manual:27523dca2e] nie wystarcza?
Pozdrawiam. -------------------- It's Time to Join the PLD Linux Generation!
<? while (!$success) { $try++; } ?> |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 19.04.2003 Skąd: Jastrzębie Ostrzeżenie: (0%) ![]() ![]() |
nie ponieważ wordwrap rozdzieli wyraz np. w połowie a tu chodzi o całe wyrazy , więc jeśli zdanie ma ileś tam znaków , a maksymalna ilośc znaków jaka może być kończy się w podanym wyrazie to zostawia go całego a ucina wszystko zaraz po nim. wordwrap przydaje się przy bezsensownych wpisach jak np. "hudshudshdsds" coś takiego bo wtedy rozdzieli to nie psując tabelki itp
![]() -------------------- Być albo nie być ?.....
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Hmm
wordwrap ( string str [, int width [, string break [, boolean cut]) cos mi sie wydaje ze ktos lepiej powinien czytac manuala ![]() -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 19.04.2003 Skąd: Jastrzębie Ostrzeżenie: (0%) ![]() ![]() |
aaa faktycznie
![]() ![]() ![]() -------------------- Być albo nie być ?.....
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.06.2025 - 03:53 |