You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP计算BMI如何去除多余小数获得符合要求的精度结果

问题原因

你得到的结果偏差过大不是小数位数的问题,是身高单位未做转换导致的。BMI计算公式要求身高以米为单位参与运算,你传入的170是厘米单位,直接计算就会出现结果偏小的问题。

修正方案

  • 第一步:先将厘米单位的身高转换为米,转换逻辑为身高数值除以100
  • 第二步:代入公式计算BMI数值
  • 第三步:使用PHP内置函数保留两位小数即可得到目标结果

常用小数格式化方法

  1. number_format($数值, 保留位数):直接返回格式化后的字符串,适合前端输出场景
  2. round($数值, 保留位数):对数值做四舍五入处理,返回浮点类型,适合后续需要继续做数值运算的场景
  3. sprintf("%.2f", $数值):格式化输出指定小数位数的字符串,支持更复杂的格式规则

完整可运行代码示例

$weight = 70;
$height = 170;

// 身高单位从厘米转米
$heightInMeter = $height / 100;
// 计算BMI
$bmi = $weight / pow($heightInMeter, 2);
// 保留两位小数输出
echo number_format($bmi, 2);
// 输出结果:24.22

内容的提问来源于stack exchange,提问作者Isabella

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 18:15:03