PHP array_pop和内爆在与外语一起使用时显示问号



我使用以下代码在Wordpress网站上只显示姓氏第一个字符:

$name = $comment->comment_author;
$separate = mb_split(" ", $name);
$last = array_pop($separate);
echo implode(' ', $separate)." ".$last[0].".";

它适用于英文名称,但$last[0]在与外语(如阿拉伯语、希伯来语、希腊语等(一起使用时会返回一个问号。例如:

名称:השם שלי

将返回:

השם ?.

我已经试着解决这个问题一个小时了,但到目前为止什么都没有。

知道吗?

您可以尝试设置编码(https://www.php.net/manual/ro/function.mb-internal-encoding.php)在使用mbsplit函数之前。

最新更新