如何在PHP中剪切带有日本字符的字符串的一部分?

如何在PHP中剪切带有日本字符的字符串的一部分?,php,substr,Php,Substr,我有一个字符串:$fullname=ワタナベサン'; 以及一些用于剪切字符串部分的行代码,条件如下: if (strlen ( $fullname ) >= 14) $this->FullName = substr ( $fullname, 0, 10 ) . '...'; else $this->FullName = $fullname; 但结果显示为错误字符串:'ワタナ�...'处理日语字符时,需要使用多字节版本的字符串函数。使用而不是substr和str

我有一个字符串:
$fullname=ワタナベサン';

以及一些用于剪切字符串部分的行代码,条件如下:

if (strlen ( $fullname ) >= 14)
    $this->FullName = substr ( $fullname, 0, 10 ) . '...';
else
    $this->FullName = $fullname;

但结果显示为错误字符串:
'ワタナ�...'

处理日语字符时,需要使用多字节版本的字符串函数。使用而不是substr和strlen。

substr
和所有其他核心PHP字符串函数都不支持多字节,无法正确处理多字节字符串。它们只能在ASCII字符串或其他单字节编码上正常工作。要正确操作多字节字符串,在大多数情况下需要使用中的等效函数

有关更多信息,请参阅。欢迎来到角色编码的兔子洞;你有很多东西要学o)