在PHP中有方法将整数转换为字符串吗?
当前回答
警告:下面的答案是基于错误的前提。将0数字转换为字符串总是返回字符串“0”,使所提供的代码成为冗余。
所有这些答案都很好,但如果值为零,它们都会返回一个空字符串。
试试下面的方法:
$v = 0;
$s = (string)$v ? (string)$v : "0";
其他回答
我的情况:
echo strval("12"); => 12
echo strval("0"); => "0"
我在工作……
$a = "12";
$b = "0";
echo $a * 1; => 12
echo $b * 1; => 0
在PHP中,有许多方法可以将整数“转换”为字符串。
传统的计算机科学方法是将变量转换为字符串:
$int = 5;
$int_as_string = (string) $int;
echo $int . ' is a '. gettype($int) . "\n";
echo $int_as_string . ' is a ' . gettype($int_as_string) . "\n";
你也可以利用PHP的隐式类型转换和字符串插值:
$int = 5;
echo $int . ' is a '. gettype($int) . "\n";
$int_as_string = "$int";
echo $int_as_string . ' is a ' . gettype($int_as_string) . "\n";
$string_int = $int.'';
echo $int_as_string . ' is a ' . gettype($int_as_string) . "\n";
最后,与上面类似,任何接受并返回字符串的函数都可以用于转换和整数。考虑以下几点:
$int = 5;
echo $int . ' is a '. gettype($int) . "\n";
$int_as_string = trim($int);
echo $int_as_string . ' is a ' . gettype($int_as_string) . "\n";
我不推荐最后一个选项,但我在野外见过依赖于这种行为的代码,所以我想把它传递给大家。
我想说这取决于上下文。可以使用Strval()或强制转换操作符(string)。然而,在大多数情况下,PHP将决定什么对你来说是好的,例如,你使用echo或printf…
注意:die()需要一个字符串,不会显示任何int:)
你可以简单地使用以下命令:
$intVal = 5;
$strVal = trim($intVal);
我尝试了上面所有的方法,但当我在另一个字符串中嵌入值时,我得到了“数组到字符串转换”错误。如果你有同样的问题,试试implode()函数。 例子:
$integer = 0;
$id = implode($integer);
$text = "Your user ID is: ".$id ;
推荐文章
- 在PHP单元测试执行期间,如何在CLI中输出?
- 在PHP中使用heredoc的优势是什么?
- 字符串不能识别为有效的日期时间“格式dd/MM/yyyy”
- PHP中的echo, print和print_r有什么区别?
- 如何删除表中特定列的第一个字符?
- 我应该如何从字符串中删除所有的前导空格?- - - - - -斯威夫特
- 将varchar字段的类型更改为整数:"不能自动转换为整数类型"
- 将整数转换为字符串,以逗号表示千
- 如何将XML转换成PHP数组?
- 将JavaScript字符串中的多个空格替换为单个空格
- 如何将对象转换为数组?
- printf()和puts()在C语言中的区别是什么?
- 从IP地址获取位置
- TypeScript枚举对象数组
- jQuery -替换字符串中某个字符的所有实例