Ver*_*era 2 php string floating-point integer decimal
我将字符串转换为float有问题.
print gettype($value[$id]); //returns string
var_dump($value[$id]);//returns string '34,7140' (length=7)
$float = floatval($value[$id]);
print gettype($float);//returns double
var_dump($float);//returns float 34
echo $float;//returns 34
Run Code Online (Sandbox Code Playgroud)
我不明白为什么"34"?为什么$ float不是'34,7140'?
我如何得到$ float = 34,7140?
问题是浮点数应该是英文格式,.分隔小数部分,而不是逗号.如果单个逗号的格式始终相同,请使用以下命令:
$float = (float)str_replace(',', '.', $value);
Run Code Online (Sandbox Code Playgroud)