假设有一个产品列表页面,其中列出了产品名称和描述。描述不能超过20个字符。它很容易在PHP中...直到我遇到utf8字符
here is a text from my native language: női dolog
但是我在最糟糕的地方切了它,ő字符损坏了:
here is a text from my native language: n�
如何躲闪呢?我尝试对其进行编码和解码,但收效甚微。想法?
答案 0 :(得分:2)
使用编码识别mb functions:
echo mb_substr($string, 0, 20, 'UTF-8');
答案 1 :(得分:1)
您应该使用mb*
扩展名来处理多字节字符串。您不能使用substr()
,因为它适用于字节而不是符号(并且它们在多字节编码方面不相同)。因此,要将字符串修剪为20个符号,请使用mb_substr()
$result = mb_substr($data, 0, 20);//add UTF-8 to point utf encoding