加入缓存吧,把数据暂存在php数组文件里

解决方案 »

  1.   

    代码优化一下吧.
    对于一个可以重用的数据,加入到$_SESSION里,或者生成一些临时文件.
    注意不要重复的操作数据库获取或者更新相同的数据.foreach($userId as $id) 
    在循环里,进行数据库操作,可不是个好方法.假如你有1000条,哪不是要执行1000次,呵呵.
    尽量减少数据库的操作.
      

  2.   

    我说详细点
    就是一个admin login进入后就会调用
      $GLOBALS["crm"]->account->auto_update_leave_module();     
    这函数为:
      function auto_update_leave_module() 
            { 
               if($this->isHR()) 
               { 
               $userId=$this->getAllStaffUserId(); 
               foreach($userId as $id) //通过user_id 走下去
                {           
                $user_id = $id["user_id"]; 
                $this->update_paid_personal_leave($user_id);  //这几个this都是有用的,用来更改db数据。
                $this->subtract_annual_when_forgot($user_id); 
                $this->update_annual($user_id ); 
                $this->update_off($user_id ); 
                $this->update_off_12($user_id );       
                $this->update_medical($user_id ); 
                $this->auto_update_leave_to_completed($user_id ); 
              }           } 
            } 情况就是这样,
    大家帮我想想办法,
      

  3.   

    操作数据库 用PDO会快很多把你那个对象里面的方法改成调用PDO的试试