PHP – substr a UTF-8
Pokud máte problém s práci s řetězci v PHP v UTF-8 – problém je pravděpodobně v tom, že substr jede podle počtu bitů a ne podle počtu znaků. V UTF-8 má každý znak více bitů, takže to potom osekává řetězce s háčky a čárky více, než by mělo (dnes mě to stálo 2hod hledání v kódu, než jsem přišel na to, že chyba není na mém přijímači). Lze to řešit vlastní funkcí.
Funkce např. piko_substr
function piko_substr($text, $odkud, $kam) {
$temp = iconv("iso8859-2", "utf-8", substr(iconv("utf-8", "iso8859-2", $text),$odkud,$kam));
return($temp);
}
