Note: mb_strwidth is NOT returning bytes. It's returning the width of monotype characters. (In some languages, some characters will take up 2 character widths if displayed in monotype.)
PHP - Manual: mb_strwidth
2024-11-14
(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
mb_strwidth — 返回字符串的宽度
$str
, string $encoding
= mb_internal_encoding()): int
返回 string 类型 str
的宽度。
多字节字符通常是单字节字符的两倍宽度。
字符 | 宽度 |
---|---|
U+0000 - U+0019 | 0 |
U+0020 - U+1FFF | 1 |
U+2000 - U+FF60 | 2 |
U+FF61 - U+FF9F | 1 |
U+FFA0 - | 2 |
str
待解码的 string。
encoding
encoding
参数为字符编码。如果省略或是 null
,则使用内部字符编码。
string str
的宽度。
Note: mb_strwidth is NOT returning bytes. It's returning the width of monotype characters. (In some languages, some characters will take up 2 character widths if displayed in monotype.)
Important, if you're looking to trim/cut/truncate a string so that it will fit a certain byte size (for example to fit in a database field), look at: mb_strcut()