我需要转换一个字符串,如37152548到371525,48或371525.48
我正在尝试number_format()
和floatval()
,但不成功。
$var = '37152548';
$var = number_format($var, 2);
echo $var; // output 37,152,548.00
答案 0 :(得分:2)
你可以尝试
$var = '37152548';
echo number_format($var / 100, 2, ".", "");
输出
371525.48
答案 1 :(得分:1)
它正常工作。 37152548是一个整数,因此数字格式只会添加逗号。如果您希望最后2个数字位于小数的另一侧,则需要将其除以100
$var = number_format($var/100, 2);
如果var是'371525.48',那么它会按照你想要的方式格式化它。如果你想要它没有逗号,那么试试
$var = number_format($var/100, 2,'.','');
答案 2 :(得分:0)
PHP无论如何都会将你的字符串转换为数字。至于小数位,因为你说:
我需要转换一个字符串,如37152548到371525,48或371525.48
......好吧,除以100:
$var = '37152548';
echo $var / 100; //outputs 371525.48
如果你想确定你有一个号码,那么使用floatval
(因为它返回一个像number_format这样的字符串的数字):
$var = '37152548';
$var = floatval($var) / 100;
echo $var; //outputs: 371525.48
echo '<br>'; //new line
//And you can do calculations:
echo $var - 500; //outputs: 371025.48
floatval将您的字符串转换为浮点变量。注意:PHP不区分单精度和双精度,实际上doubleval
只是floatval的别名。