php - 如何strlen多语言字符串

标签 php multilingual strlen

我想获取 Shift-jis 和 Utf-8 的 strlen(),然后比较它们。 字符串可以混合为“ああ12345678sdfdszzz”。我尝试使用 strlen 但它会产生不同的结果。 mb_strlen 也没有帮助,因为这是一个混合字符串。

例如:

ああ12345678 >> strlen() = 24 chars
ああああああああああああああああ >> strlen() = 48 chars
ああああああああああああああああああ >> strlen() = 54 chars

好像没有什么规定。那么什么是计算 strlen 并以多语言比较它们的最佳方法

最佳答案

strlen只计算字节数,因此只对 single-byte character encodings 有用;使用 mb_strlen对于multi-byte character encodings可以改为计算实际字符数。

关于php - 如何strlen多语言字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9256676/

相关文章:

php - 如何在html表格中创建水平滚动条?

html - 我可以在 hreflang 中使用自定义语言/国家/地区代码组合吗?

php - 如何使用 Laravel 将德语翻译成英语(本地化?)

c# - MessageBoxButtons 的语言与当前文化的语言不同

c - 使用 memset() 并解释函数的 size_t 数字

php - 如何strlen数组的前两部分?

PHP如果 session 等于mysql表行,则执行某些操作

php - 日期差异

php - Laravel,多个 belongsto 和自动插入 ID?

php - 用 PHP 计算特殊字符