首页 > Web开发 > 详细

PHP 处理历史数据的伪代码

时间:2019-03-31 20:26:43      阅读:130      评论:0      收藏:0      [点我收藏+]
<?php

class a
{
    protected static $Senior = [1, 2, 3]; 
    protected static $NoSenior = [13, 14, 15, 16, 17, 18, 19; 
    /**
     * 获取所有在职老师的id
     * 根据在职老师去查所匹配的条件
     * 根据条件取跟新新的
     */
    function run()
    {
        //获取所有在职老师的id
        $sql = "SELECT t.teacher_id FROM teacher t LEFT JOIN teacher_ext te on t.teacher_id = te.id  WHERE te.job_status = 1";
        $list = M()->all();
        //sleep(10);
        foreach ($list as $teacher_id) {
            //$teacher_id = 22171;
            $sql = "SELECT  t.teacher_id,t.race_type,lm.is_leader,ttgr.grade_id FROM teacher t 
                    LEFT JOIN 表 te on 条件 
                    LEFT JOIN 表 lm on 条件
                    LEFT JOIN 表 ttgr on 条件
                    WHERE  t.teacher_id = ? ";
           
            $teacherDate = M()->query($sql, $teacher_id)->all();//查询
            $endRaceType = $this->tdate($teacherDate);    
            $res = $this->insertDate($endRaceType, $teacher_id[teacher_id]); 
        }

    }

    /**
     * 获取老师的所有类型;
     * @param $teacherDate
     * @return array
     */
    public function tdate($teacherDate)
    {
        $raceType = [];
        foreach ($teacherDate as $val) {
            if ($val[is_leader] == 1) { 
                if (in_array($val[], self::Senior)) {
                    
                } else { 
                   
                }
            } else {
                if (in_array($val[], self::$Senior)) { 
                 
                } else { 
                   
            }
            //组合所有的授课类型
            $raceType[] = $teacherRaceType;
        }

        //合并所有授课类型到一个数组,并去除重复的授课类型;
        $race = [];
        for ($i = 0; $i < count($raceType); $i++) {
            $middle = array_merge($race, $raceType[$i]);
            $race = $middle;
        }
        $endRaceType = array_unique($race);
        return $endRaceType;
    }

    /**
     * 存入数据库;
     * @param $endRaceType
     * @param $teacher_id
     */
    public function insertDate($endRaceType, $teacher_id)
    {
        foreach ($endRaceType as $v) { //添加到数据库
            $m = M()->begin();
            try {
                M()->insert([teacherId => $teacher_id, raceType => $v]);
                $m->end(true);
            } catch (\Exception $e) {
                $m->end(false);
                MSVC::log( $e->getMessage());
            }
        }
        sleep(10);
    }


}

 

PHP 处理历史数据的伪代码

原文:https://www.cnblogs.com/songyanan/p/10632883.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!