最后使用带有特殊字符的PHP的substr会产生问号

问题描述

|| 当我在PHP中使用substr()函数时,当最后一个字符是特殊字符(例如ë或ö等)时,在字符串末尾出现一个问号(带问号的正方形-取决于浏览器) ...
$introtext = html_entity_decode($item->description,ENT_QUOTES,\"UTF-8\");
$introtext = substr($introtext,200);
我该如何逃避?     

解决方法

        如果您的字符串具有多字节编码(如UTF-8),则应使用ѭ1来避免出现以下问题:
$introtext=mb_substr($introtext,200);
    ,        这是因为substr不适用于多字节字符。 substr可能会将多字节字符“减半”。您应该改用mb_substr。还要确保您的文件保存在UTF-8中。
$introtext = mb_substr($introtext,200);
    ,        万一有人尝试了以前的答案,但仍然不起作用: 尝试在
mb_substr
中添加Unicode名称,例如:
$introtext = mb_substr($introtext,200,\'utf-8\');
    ,        使用mb_substr