我有一个小的爆炸过程:
$var = 120.180;
$var = explode("." , $var);
$var1 = $var[0];
$var2 = $var[1];
echo $var1;
echo $var2;
回波是:
120和18,为什么?为什么180变为18,我该如何修复?
因为120.180不是字符串,所以它是一个数字。因此,120.180将变为120.18,因为零是一个浮点值。你会发现,仅仅回应120.180仍然会产生120.18。
如果你做了$var = "120.180";
,即在数字周围使用引号,你就会得到你期望的结果。
将值放在引号中以使用$var作为字符串:
$var = '120.180';
现在您将120.180保存为某个浮点值,该值将截断后零。
将$var作为字符串重试:
$var = '120.180';
$var
不包含您期望的内容。考虑以下代码:
$var = 120.180;
var_dump($var);
这将输出float(120.18)
——您可以看到它已经删除了零。这就是数字在PHP中的存储方式。
如果要保留0
s,请将数字存储为字符串。
$var = '120.180';
你无法修复它。它一开始就坏了。相反,从一些不同的东西开始。
$var = '120.180';
$var = explode("." , $var);
$var1 = $var[0];
$var2 = $var[1];
echo $var1;
echo $var2;