Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno PHP: SubStr k mezeře

Ahojky. Snažím se získat z textu prvních 200 znaků, jenže text je v UTF8 a když je zrovna dvoustý znak s diakritikou, tak je v tom textu zakódován do dvou znaků a tudíž pak substr vypíše jako poslední znak nějaký nesmysl. Na internetu jsem nenalezl žádné pěkné řešení, tak jsem se rozhodl, že k těm 200 znakům (moc na dýlce nesejde) budu furt přidávat po jednom, dokud nenarazím na mezeru. Jen mi to moc nejde naprogramovat :-(

Díky

Předmět Autor Datum
;-) nevim jestli to pomuže, ale to co našel google vypadá dost přátelsky: tracker
AZOR 14.02.2007 17:26
AZOR
jo, to vypadá dobře, díky :-)
krokchodil 14.02.2007 17:29
krokchodil
V php manuálu k substr jsem našel toto: function utf8_substr($str,$from,$len){ return preg_replace(…
Marvin 14.02.2007 17:29
Marvin
zkusím, díky
krokchodil 14.02.2007 17:30
krokchodil
jo, tohle funguje výborně. vyřešeno :-p poslední
krokchodil 15.02.2007 14:20
krokchodil

V php manuálu k substr jsem našel toto:

function utf8_substr($str,$from,$len){
  return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
                       '((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
                       '$1',$str);
}

má se jednat o utf8 verzi funkce substr.

Zpět do poradny Odpovědět na původní otázku Nahoru