PHP 中获取mysql的float字段,echo 输出后,小数部分为包含多个0.
可使用 floatval($num) 将0舍去。
如要保留小数位,可使用 number_format($num, 2);
number_format函数对超过指定位数的值,进行了四舍五入。
如不想四舍五入,而保留所有小数。可使用如下方法:
// 如仅想保留两位小数可用 number_format($num, 2); echo f('1001.334534', 2) . '<br>'; // 1001.334534 echo f('-1001.000', 2) . '<br>'; // -1001.00 echo f('1001.3', 5) . '<br>'; // 1001.30000 echo f('1001.33') . '<br>'; // 1001.33 echo f('1001.000') . '<br>'; // 1001 // 格式化小数,但不四舍五入,如有小数则全保留,无小数则添加0; function f($num, $v = 0) { $num = floatval($num); if ($v > 0) { $num = '' . $num; $arr = explode('.', $num); if (count($arr) === 1) { $num .= '.' . str_repeat('0', $v); } else { $v -= strlen($arr[1]); if ($v > 0) $num .= str_repeat('0', $v); } } return $num; }