/** * 记录到 mysql */ private function insert_mysql() { $exists = Tjssc::findOne(['qishu' => $this->data['qihao'], 'code' => $this->data['code']]); if ($exists) { exit("天津时时彩数据已经采集过了 时间:" . date('Y-m-d H:i:s') . "\r\n"); } //开奖前三 号码 $q3 = $this->data['code'][0] . $this->data['code'][1] . $this->data['code'][2]; //开奖中三 号码 $z3 = $this->data['code'][1] . $this->data['code'][2] . $this->data['code'][3]; //后奖中三 号码 $h3 = $this->data['code'][2] . $this->data['code'][3] . $this->data['code'][4]; $this->analysisCode(); list($q3_data1_lucky, $q3_data1_regert, $q3_data2_lucky, $q3_data2_regert) = $this->isLucky($q3); //前三中奖情况 list($z3_data1_lucky, $z3_data1_regert, $z3_data2_lucky, $z3_data2_regert) = $this->isLucky($z3); //中三是否中奖 list($h3_data1_lucky, $h3_data1_regert, $h3_data2_lucky, $h3_data2_regert) = $this->isLucky($h3); //侯三是否中奖 //前三是组6还是组3 $q3_type = $this->is_type($q3); //中三是组6还是组3 $z3_type = $this->is_type($z3); //后三是组6还是组3 $h3_type = $this->is_type($h3); //开启事物 $innerTransaction = Yii::$app->db->beginTransaction(); try { /* 插入 开奖记录表数据 */ $tjsscModel = new Tjssc(); $tjsscModel->qishu = $this->data['qihao']; $tjsscModel->one = $this->data['code'][0]; $tjsscModel->two = $this->data['code'][1]; $tjsscModel->three = $this->data['code'][2]; $tjsscModel->four = $this->data['code'][3]; $tjsscModel->five = $this->data['code'][4]; $tjsscModel->code = $this->data['code']; $tjsscModel->front_three_type = $q3_type; $tjsscModel->center_three_type = $z3_type; $tjsscModel->after_three_type = $h3_type; $tjsscModel->kj_time = $this->data['kjsj']; $tjsscModel->time = time(); $tjsscModel->save(); /* 插入 开奖记录关联的 数据分析表 数据包1解析的结果 */ $analysisTjsscModel = new AnalysisTjssc(); $analysisTjsscModel->tjssc_id = $tjsscModel->id; $analysisTjsscModel->front_three_lucky_txt = $q3_data1_lucky; $analysisTjsscModel->front_three_regret_txt = $q3_data1_regert; $analysisTjsscModel->center_three_lucky_txt = $z3_data1_lucky; $analysisTjsscModel->center_three_regret_txt = $z3_data1_regert; $analysisTjsscModel->after_three_lucky_txt = $h3_data1_lucky; $analysisTjsscModel->after_three_regret_txt = $h3_data1_regert; $analysisTjsscModel->data_txt = $this->data_packet_txt; $analysisTjsscModel->type = 1; $analysisTjsscModel->time = time(); $analysisTjsscModel->save(); /* 插入 开奖记录关联的 数据分析表 数据包2解析的结果 */ $analysisTjsscModel = new AnalysisTjssc(); $analysisTjsscModel->tjssc_id = $tjsscModel->id; $analysisTjsscModel->front_three_lucky_txt = $q3_data2_lucky; $analysisTjsscModel->front_three_regret_txt = $q3_data2_regert; $analysisTjsscModel->center_three_lucky_txt = $z3_data2_lucky; $analysisTjsscModel->center_three_regret_txt = $z3_data2_regert; $analysisTjsscModel->after_three_lucky_txt = $h3_data2_lucky; $analysisTjsscModel->after_three_regret_txt = $h3_data2_regert; $analysisTjsscModel->data_txt = $this->data_packet_txt_2; $analysisTjsscModel->type = 2; $analysisTjsscModel->time = time(); $analysisTjsscModel->save(); $innerTransaction->commit(); //事物提交 $this->setLog(true, '天津时时彩数据抓取成功'); echo "天津时时彩数据抓取成功 时间:" . date('Y-m-d H:i:s') . "\r\n"; } catch (\Exception $e) { $innerTransaction->rollBack(); $this->setLog(false, '天津时时彩数据与数据分析存入失败'); exit("天津时时彩数据分析存入失败 时间:" . date('Y-m-d H:i:s') . "\r\n"); } }
/** * 查询天津时时彩 中三 组3形态 设定的号码 最后一次出现的位置 * @param $newest; 天津时时彩最新的数据位置; * @param $number; 设定的报警号码值; * @param $qishu; 设定的报警期数; * @return string|void */ private function tj_after_three_three_show($newest, $number, $qishu) { //设定号码 中三 组3 最新出现的位置 $result = Tjssc::find()->andWhere(['after_three_type' => 2])->andFilterWhere(['or', "three={$number}", "four={$number}", "five={$number}"])->orderBy('time DESC')->one(); //数据中 暂无 此号码在 出现过 - 数据库刚创建的情况才会出现 if (!$result) { echo '天津时时彩 后三 组3,当前数据库中暂没有出现过 ' . $number . ' 的号码' . "\r\n"; return false; } //计算有多少期没有开过 设定号码的奖了 $interval = Tjssc::find()->andWhere(['>', 'qishu', $result->qishu])->andWhere(['<=', 'qishu', $newest->qishu])->count(); //间隔期数 大于 或 等于 报警期数就报警 if ($interval >= $qishu) { echo '警告: 天津时时彩 - 后三 组3 - 预定号码:' . $number . ' 已经有' . $interval . ' 期未开奖了' . "\r\n"; //报警操作 return '警告: 天津时时彩 - 后三 组3 - 预定号码:' . $number . ' 已经有' . $interval . ' 期未开奖了' . "<br>"; } else { echo '天津时时彩 - 中三 后3 - 预定号码:' . $number . ' 已经有' . $interval . '期未开奖了' . "\r\n"; } return false; }
/** * @return \yii\db\ActiveQuery */ public function getTjssc() { return $this->hasOne(Tjssc::className(), ['id' => 'tjssc_id']); }
/** * 获取分组数据 */ private function getdate($type) { //查询选择时间的前2天数据 $name = $this->getUnit(\Yii::$app->request->post('cp_unit')); $val = \Yii::$app->request->post('cp_unit_val'); if ($type == 1) { //重庆时时彩 //查询选择号码 最新出现的位置 $newest = Cqssc::find()->where([$name => $val])->orderBy('time DESC')->limit(1)->select('time')->one(); if (!$newest) { //还没有出现过此号码 return false; } $end_time = $newest->time; $start_time = $end_time - 86400 * 2; // 比此号码出现的时间 - 2天的时间 $cqssc = Cqssc::find()->andWhere(['>=', 'time', $start_time])->andWhere(['<', 'time', $end_time])->orderBy('time ASC')->all(); $newCqssc = []; $number = 0; foreach ($cqssc as $key => $m) { if ($m->{$name} == $val) { $newCqssc[] = $m; $number = 1; } else { if ($number > 0 && $number < 2) { $newCqssc[] = $m; $number += 1; } if ($number == 2) { $number = 0; } } } /* $cqssc = Codeold::find()->andWhere(['>=','time',$start_time])->andWhere(['<','time',$end_time])->orderBy('time ASC')->all(); $newCqssc = []; $number = 0; foreach ($cqssc as $key=>$m){ //将开奖号中间的空格去掉 $code = str_replace(" ", '', $m->code); if($code[\Yii::$app->request->post('cp_unit') -1 ] == $val){ $newCqssc [] = $m; $number = 1; }else{ if($number>0 && $number<2){ $newCqssc [] = $m; $number += 1; } if($number == 2){ $number = 0; } } } */ return $newCqssc; } if ($type == 2) { //天津时时彩 //查询选择号码 最新出现的位置 $newest = Tjssc::find()->where([$name => $val])->orderBy('time DESC')->limit(1)->select('time')->one(); if (!$newest) { //还没有出现过此号码 return false; } $end_time = $newest->time; $start_time = $end_time - 86400 * 2; // 比此号码出现的时间 - 2天的时间 $tjssc = Tjssc::find()->andWhere(['>=', 'time', $start_time])->andWhere(['<=', 'time', $end_time])->orderBy('time ASC')->all(); $newTjssc = []; $number = 0; foreach ($tjssc as $key => $m) { if ($m->{$name} == $val) { $newTjssc[] = $m; $number = 1; } else { if ($number > 0 && $number < 2) { $newTjssc[] = $m; $number += 1; } if ($number == 2) { $number = 0; } } } return $newTjssc; } if ($type == 3) { //新疆时时彩 //查询选择号码 最新出现的位置 $newest = Tjssc::find()->where([$name => $val])->orderBy('time DESC')->limit(1)->select('time')->one(); if (!$newest) { //还没有出现过此号码 return false; } $end_time = $newest->time; $start_time = $end_time - 86400 * 2; // 比此号码出现的时间 - 2天的时间 $xjssc = Xjssc::find()->andWhere(['>=', 'time', $start_time])->andWhere(['<', 'time', $end_time])->orderBy('time ASC')->all(); $newXjssc = []; $number = 0; foreach ($xjssc as $key => $m) { if ($m->{$name} == $val) { $newXjssc[] = $m; $number = 1; } else { if ($number > 0 && $number < 2) { $newXjssc[] = $m; $number += 1; } if ($number == 2) { $number = 0; } } } return $newXjssc; } }