PHP intval 转换浮点数精度

在 PHP 和其他一些语言都会存在这个问题,转换浮点数为整数的时候会出现精度丢失,如下:

$num = 19.99;

echo intval($num * 100); // 输出 1998

解决办法:

1.转换成字符串再 intval

echo intval(strval($num * 100));// 输出 1999

2.使用 round 函数替代 floatval

echo round($num * 100);// 输出 1999

 


版权声明:本文为qq_24935119原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。