$time3 = strtotime($time);
$num = (date("Y",$time3)-date("Y",$info["prev_time"]))*12+(date("m",$time3)-date("m",$info["prev_time"]));;
$info["forecast"] = $this->zqCount($starttime,$info["duration"],$info["cycle"],$info["mt_id"],1,$user_id,$num);
$info["conception"] = $this->zqCount($starttime,$info["duration"],$info["cycle"],$info["mt_id"],3,$user_id,$num);
$info["ovulation"] = $this->zqCount($starttime,$info["duration"],$info["cycle"],$info["mt_id"],4,$user_id,$num);
/*开始时间 经期时长(天数) 周期天数*/
private function zqCount($starttime,$duration,$cycle,$mt_id,$type,$user_id,$num = 1) {
if($type == 1){
$cycle = $cycle * $num;
$start_time = date("Y-m-d",strtotime($starttime." +".$cycle." days"));
$endtime = date("Y-m-d",strtotime($starttime." +".$cycle." days"." +".$duration." days"));
$data=[
"starttime"=>strtotime($start_time),
"endtime"=>strtotime($endtime),
"umt_id"=>$mt_id,
"user_id"=>$user_id,
"type"=>$type
];
return $data;
}
if($type==3){
$cycle = $cycle * $num;
$plr = date("Y-m-d",strtotime($starttime." +".$cycle." days "."- 14 days"));
$start_time =date("Y-m-d",strtotime($plr."- 5 days"));
$endtime = date("Y-m-d",strtotime($plr." +4 days"));
$data=[
"starttime"=>strtotime($start_time),
"endtime"=>strtotime($endtime),
"umt_id"=>$mt_id,
"user_id"=>$user_id,
"type"=>$type
];
return $data;
}
if($type==4){
$cycle = $cycle * $num;
$start_time = date("Y-m-d",strtotime($starttime." +".$cycle." days "."- 14 days"));
$data=[
"starttime"=>strtotime($start_time),
"endtime"=>strtotime($start_time),
"umt_id"=>$mt_id,
"user_id"=>$user_id,
"type"=>$type
];
return $data;
}
}
生理周期计算
于 2020-08-12 08:19:42 首次发布