PHP 浮点转字符串精度丢失的坑
$a = 10.45678790; $b = strval($a); $c = sprintf('%.8f',$a); echo('a->'.$b.'<br/>');//10.45678790 echo('<br/>'); echo('b->'.$b.'<br/>');//10.4567879 echo('<br/>'); echo('c->'.$c.'<br/>');//10.45678790
结果输出 strval 方法 和 (string)$a 都会丢掉最后的那个0 8位小数变成了7位
结论: PHP浮点型转字符串的比较安全的方法是sprintf
sprintf('%.8f',$a)