BMI/肥満度判定
身長と体重からBMI値、理想体重、肥満度を判定するモジュール
BMI = 体重(kg) ÷ (身長(m) × 身長(m))
理想体重(kg) = 身長(m) × 身長(m) × BMI標準値(22)
肥満度 = (体重(kg) - 理想体重(kg)) ÷ 理想体重(kg)) × 100
PHP
/**
*
* BMI/肥満度判定
*
* @param int $ht
* @param int $wt
* @return array
*/
function getBMI($ht, $wt)
{
// BMI
$bmi = round($wt / ($ht * $ht) * 10000, 2);
// 理想体重
$ideal = round(($ht * $ht) / 10000 * 22, 2);
// BMI22まで必要な体重
$measure = ($wt - $ideal) * -1;
// 肥満度
$obesity = round(($wt - $ideal) / $ideal * 100, 2);
return array($bmi, $ideal, $measure, $obesity);
}
使用例
PHP
list($bmi, $ideal, $measure, $obesity) = $this->getBMI($ht, $wt);
if ($bmi < 18.5) {
$body = '痩せ気味(~18.5)';
} elseif ($bmi < 25) {
$body = '標準(18.5~24.9)';
} elseif ($bmi < 30) {
$body = '太り気味(25~29.9)';
} else {
$body = '太り過ぎ(30~)';
}
if ($obesity > 50) {
$figure = '重度の肥満です。注意が必要です。';
} else if ($obesity > 30) {
$figure = '中等度の肥満です。注意が必要です。';
} else if ($obesity > 10) {
$figure = '肥満傾向があります。';
} else if ($obesity > -10) {
$figure = '普通です。現在の体型を維持しましょう。';
} else if ($obesity > -20) {
$figure = '痩せ傾向があります。';
} else {
$figure = '痩せ症です。注意が必要です。';
}
サンプル
ActionScriptで書いたものをPHPで書き直したものです。