我有这个标题的代码
post_title; $getlength = strlen($thetitle); $thelength = 26; echo substr($thetitle, 0, $thelength); if ($getlength > $thelength) echo "..."; ?>这是为了节选
...一切都正常工作,除了最后一个字母是一个特殊的字符,因为然后我得到这个�(格式错误的字节序列)。
发布于 2023-01-01 00:25:53
您可以使用mb_substr(),它在多字节字符串上使用是安全的。我对本地PHP安装进行了快速测试:
php > $str = 'éééééé';
php > var_dump( substr( $str, 0, 3 ) );
string(3) "é�"
php > var_dump( mb_substr( $str, 0, 3 ) );
string(6) "ééé"
php > var_dump( mb_substr( 'abcdef', 0, 3 );
string(3) "abc"https://wordpress.stackexchange.com/questions/412492
复制相似问题