strval()函数将变量转为字符串而不改变原变量,返回整数、浮点数、布尔值、null等对应字符串形式,数组转为"Array",对象需实现__toString方法,否则报错;与(string)强制转换和字符串拼接效果类似,但strval()可读性更强,适用于确保数据为字符串类型的场景。
strval() 函数用于将变量转换为字符串类型。它不会改变原始变量,而是返回该变量的字符串形式。这个函数在需要确保数据是字符串时非常有用,比如拼接、输出或格式化数据。
基本语法
strval(mixed $var): string
参数 $var 可以是任意类型的变量,例如整数、浮点数、布尔值、数组(会转成 "Array")、对象(需实现 __toString 方法)等。
常见用法示例
1. 转换数字为字符串
- $num = 123;
- $str = strval($num); // 结果是字符串 "123"
2. 转换布尔值
- strval(true); // 返回 "1"
- strval(false); // 返回 ""(空字符串)
3. 处理 null 值
- strval(null); // 返回空字符串 ""
4. 数组和对象的情况
- strval([1, 2, 3]); // 返回 "Array"
- 对于对象,如果定义了 __toString() 方法,会调用该方法;否则会触发致命错误
与其它转换方式的比较
除了 strval(),还可以通过 (string) 强制类型转换或字符串拼接实现类似效果:
- (string)$var — 效果基本等同于 strval()
- "$var" 或 ''.$var — 在字符串上下文中自动转为字符串
strval() 更具可读性,适合在函数式编程风格中使用。
基本上就这些。根据变量类型返回对应的字符串表示,简单直接。注意数组和对象的处理方式即可。

类型的场景。






