我正在尝试将scitntific符号转换为十进制。但以下代码无法转换
$stringval = "1.356e-05";
$numericval = sscanf($stringval, "%f")[0];
echo $numericval; // 1.356E-05
(float) $stringval // 1.356E-05
(double) $stringval // 1.356E-05
$stringval + 0 // 1.356E-05
我得到的输出为1.356E-05我想要0.00001356。
当我给$stringval = "1.356e-04";
它正在工作但$stringval = "1.356e-05";
它无法正常工作
答案 0 :(得分:1)
number_format()
正是您要找的。 p>
$stringval = "1.356e-04";
$numericval = sscanf($stringval, "%f")[0];
echo number_format($numericval, 8);
答案 1 :(得分:1)
希望这有帮助
echo sprintf('%。8f',floatval('1.356e-05'));