strlen() 在 php 7.3 中返回 int 类型,表示字符串字节数而非字符数;对非字符串参数触发 e_warning 并尝试类型转换,但该行为在 php 8.1+ 已弃用。

strlen() 在 PHP 7.3 中返回 整型(int)。
这个整数表示字符串的字节数,不是字符数。比如:
-
strlen("abc")→ 返回3 -
strlen("你好")(UTF-8 编码)→ 返回6(每个中文字符占 3 字节) -
strlen("")→ 返回0
它不会返回浮点数、布尔值或字符串,严格遵循函数原型:strlen(string $string): int
注意:PHP 7.3 仍沿用 PHP 5.3 以来的规则——对非字符串参数(如数组、null、布尔值)会触发 E_WARNING 警告,并尝试类型转换后计算长度(例如 strlen(null) 会转成空字符串,返回 0);但这种行为在 PHP 8.1+ 已被标记为弃用。
所以,只要传入的是合法字符串(或能隐式转为字符串的值),返回值始终是 int 类型。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











