Autor | Zpráva | ||
---|---|---|---|
hal_sk Profil |
#1 · Zasláno: 29. 10. 2009, 15:37:22
Zdravím. Chcel by som rozdeliť text do pola, pričom oddeľovače budú 2 znaky: " " a "\n". Dá sa to aj za pomoci funkcie explode(), alebo ako sa to dá? Chcem totiž spraviť funkciu, ktorá v článku zistí pridlhý, medzerou, alebo zlomom neprerušený text a skráti ho.
|
||
radas Profil * |
#2 · Zasláno: 29. 10. 2009, 16:06:31
nejdříve by se to mohlo rozdělit na /n což je konec řadku a pak podle " " a vše prochazet cyklem..
|
||
AM_ Profil |
#3 · Zasláno: 29. 10. 2009, 16:21:49 · Upravil/a: AM_
To je lepší pomocí regulárních výrazů, např.
$text = preg_replace('~([^\s]{50})[^\s]+~', '\\1...', $text); Pokud budeš trvat na explode, nejdřív bych pomocí str_replace nahradil třeba mezery za \n a pak ti stačí triviální explode pomocí \n, ovšem řešení s regulárními výrazy počítá i s dalšími bílými znaky (tabulátory, \r) |
||
Jan Tvrdík Profil |
#4 · Zasláno: 29. 10. 2009, 16:28:20
hal_sk:
Jen doplním, že chytřejší explode se nazývá preg_split, ale pro tento účel (pokud ho chápu) je lepší řešení od AM_. |
||
Časová prodleva: 14 let
|
0