将整数转换为字符串在PHP中

622

在PHP中有一种将整数转换为字符串的方法吗?


12
PHP 是一种弱类型语言。曾经是整数类型的变量,也可以在 echo 这个函数中被视为字符串类型(即所谓的“字符串上下文”)。 - hakre
3
@hakre,是的,PHP 是弱类型语言,并且使用 echo 会以字符串方式输出值。但是这不会在内部改变变量的数据类型。因此,使用 strval($variable) 是正确的。 - nice_dev
3
strval()函数在内部不会改变$variable变量的值。 - hakre
4
我是说 $variable = strval($variable); - nice_dev
15个回答

0

我的情况:

echo strval("12"); => 12
echo strval("0"); => "0"

我正在编程工作中...

$a = "12";
$b = "0";
echo $a * 1; => 12
echo $b * 1; => 0


1
目前你的回答写得不够清晰。请编辑以添加更多详细信息,以帮助其他人理解它如何回答所问的问题。你可以在帮助中心找到更多关于如何撰写好的回答的信息。 - Community
这似乎不是一个答案,而更像是一个问题。 - Your Common Sense

0
$amount = 2351.25;
$str_amount = "2351.25";

$strCorrectAmount = "$amount";
echo gettype($strCorrectAmount);    //string

所以回显将返回字符串


关于“string”:是字面意思还是指数据类型?还是其他什么?您能否通过编辑您的回答来更加明确? - Peter Mortensen
感谢Peter Mortensen的评论。返回类型“STRING”意味着您的值应转换为一个新变量中的字符串。这就是我编辑字符串的原因。 - Kaushik shrimali

-1

我尝试了上面的所有方法,但是当我将值嵌入到另一个字符串中时,我得到了“数组转换为字符串”的错误。如果你和我遇到了同样的问题,请尝试使用implode()函数。 例如:

$integer = 0;    
$id = implode($integer);    
$text = "Your user ID is: ".$id ;

1
这段代码没有意义并返回一个错误,Argument #1 ($pieces) 必须是数组类型,但实际给定的是字符串。 - Your Common Sense

-3
您可以简单地使用以下内容:
$intVal = 5;
$strVal = trim($intVal);

1
trim()函数从字符串的两侧删除空格和其他预定义字符,虽然它返回字符串,但这是一种不良实践。最好使用strval()number_format() - Marwan Salim

-5
$integer = 93;
$stringedInt = $integer.'';

更快。
$integer = 93;
$stringedInt = $integer."";

2
$foo = 5; $foo = "$foo"; 在PHP中使用''会浪费极大的内存。 - Arthur Kushman
“浪费”是什么意思?$foo = 5; $foo = "$foo"; 这段代码只是用字符串覆盖了整数值,当然,这不是答案,但是什么是“浪费”? - JEX

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接