メタボ税【メタボリック対策税】BMI計算

SetTall($_POST[‘height’]);

$obj_BMI->SetWeight($_POST[‘weight_m’]);
if($obj_BMI->IsError() === FALSE){ //ERRORなし
$BMI = $obj_BMI->GetBMI();
$ZEI = 0;
// BMIの数値の判定
if($BMI < 18.5){ $MSG1 ="低体重"; $ZEI = 0; $COLOR ="#FFFF00"; $BMI_MSG ="もっと食べてね。"; } elseif($BMI < 15){ $MSG1 ="普通体重"; $ZEI = 0; $COLOR ="#00FF7F"; $BMI_MSG ="やったね。"; } elseif($BMI < 25){ $MSG1 ="普通体重"; $ZEI = 1000 + $BMI * 55; $ZEI = round($ZEI,-2); $COLOR ="#00FF7F"; $BMI_MSG ="普通体重なんだけどもう少しがんばれ!"; } elseif($BMI < 30){ $MSG1 ="肥満1度"; $ZEI = 2000 + $BMI * 60; $ZEI = round($ZEI,-2); $COLOR ="#FFE4E1"; $BMI_MSG ="もう少しです。がんばれ!"; } elseif($BMI < 35){ $MSG1 ="肥満2度"; $ZEI = 3000 + $BMI * 65; $ZEI = round($ZEI,-2); $COLOR ="#FA8072"; $BMI_MSG ="簡単な運動からスタート。。"; } elseif($BMI < 40){ $MSG1 ="肥満3度"; $ZEI = 4000 + $BMI * 70; $ZEI = round($ZEI,-2); $COLOR ="#FF4500"; $BMI_MSG ="食事を見直しましょうね。"; } else{ $MSG1 ="肥満4度"; $ZEI = 5000 + $BMI * 75; $ZEI = round($ZEI,-2); $COLOR ="#FF0000"; $BMI_MSG ="病院にいきましょうね。"; } $BMI = round($BMI,1); //標準体重計算 $best_weight = round($weight_m / $BMI * 22,1); $ATO = $best_weight - $weight_m; if($best_weight < $weight_m){ $SIN = "マイナス "; }elseif($best_weight > $weight_m){
$SIN = “プラス “;
}else{
$SIN = “”;
}

echo “

“;
echo “

“;
echo “

“;
echo “

“;
echo “

“;
}else{
$array_error = $obj_BMI->IsError();
foreach($array_error as $item){
echo “

{$item}

“;
}
echo ‘

戻って再入力

‘;
}
}
class CheckBMI{

var $tall;
var $weight_m;
var $BMI;
var $array_error; // 各種エラーを格納する配列

function CheckBMI(){ //コンストラクタ(プロパティの初期化)
$this->tall = 1;
$this->weight = 1;
$this->BMI = 1;
$this->array_error = array();
}

function SetTall($tall){
if(is_numeric($tall)){
if($tall > 0 && $tall < 250){ // 0m ? 3m なら人間でしょう。 $this->tall = $tall; // 引数$tallをプロパティ(メンバ変数)にセット
}else{
$this->array_error[] = “入力値に誤りがあります。(身長)”; // エラー配列に格納
}
}else{
$this->array_error[] = “入力値に誤りがあります。(身長)”;
}
$tall = $tall / 100;
}

function SetWeight($weight_m){
if(is_numeric($weight_m)){
if($weight_m > 5 && $weight_m < 300){ // 5kg ? 300kg なら人間でしょう。 $this->weight = $weight_m; // 引数$tallをプロパティ(メンバ変数)にセット
}else{
$this->array_error[] = “入力値に誤りがあります。(体重)”;
}
}else{
$this->array_error[] = “入力値に誤りがあります。(体重)”;

}
}

function CalculateBMI(){
$this->BMI = $this->weight / ($this->tall * $this->tall * 0.0001);
}

function GetBMI(){
$this->CalculateBMI();
$BMI = round($this->BMI, 3);
return $BMI;
}

// エラーがあるならTRUEを返すメソッド
function IsError(){
if(count($this->array_error) > 0){ //何かしらのエラーがセットされている
return $this->array_error;
}else{
return FALSE;
}
}
}
?>

 あなたの身長
 あなたの体重
 cm kg  
 身長{$_POST[‘height’]}センチメートル、体重{$_POST[‘weight_m’]}キログラム
 あなたの肥満度(BMI)は{$BMI}です。【{$MSG1}】
 理想体重は{$best_weight} kgです。
 今月定期預金にいれるメタボ税は  {$ZEI} 円
 メタボ税の還付まであと {$SIN} {$ATO} kgです。
 {$BMI_MSG}

【使い方】

  • 貴方の身長と体重を入力するとにより、BMI(Body Mass Index:肥満の判定基準)を計算します。
  • 【BMI値】【肥満度】、【理想体重】、【メタボ税(下記参照)】、【目標減量】が表示されます。
  • BMIの計算式は「身長から体重を算出」します。性別や年齢を考慮していませんので「理想体重のめやす」として参考にしてください。

【メタボ税(メタボリック対策税)とは】

  • なかなか痩せない私(貴方?)の為に痩せるまでは少しずつ貯金(ペナルティー)するシステムです。
  • お給料日に「身長」と「体重」を計り、この画面に数値を入力すると「肥満度」よりメタボ税が表示されます。
  • メタボ税が算出されますので「あなたの定期預金」に貯金してください。
  • メタボリック対策をしてメタボを解消してください。
  • メタボが解消して「理想体重」になった暁には、ご褒美として「定期預金」を解約して自由につかってください。

※注意 メタボ税額は私が勝手に決めてます