Possible Duplicate:
Truncate a multibyte String to n chars可能重复:将多字节字符串截断为n个字符
Hello,
你好,
I'm developing a site in French and I created a function that cuts string after X number of characters. It works great, but when the last character has an accent, it has the (?) instead of the character.
我正在用法语开发一个网站,我创建了一个在X个字符后剪切字符串的函数。它工作得很好,但是当最后一个字符有重音时,它有(?)而不是字符。
Here is my function
这是我的功能
function neat_trim3($str, $n, $delim='...') {
$len = strlen($str);
if ($len > $n) {
$tocut = $len-$n;
$output = substr($str,0,-$tocut);
return $len.' - '.$output.$delim;
}
else {
return $str;
}
}
Example
例
$str = "C'est une soirée privé ce soir";
echo eat_trim3($str, 15 , '...' );
// GIVES ME C'est une soir�...
The rest of the page echos the page perfectly, I can even echo the same string without the cut and it works great.
页面的其余部分完美地回应了页面,我甚至可以在没有剪切的情况下回显相同的字符串,并且效果很好。
Any help appreciated.
任何帮助赞赏。
Thanks.
谢谢。