orderBy('id','asc')->get(); $bar = $this->output->createProgressBar(count($oldData)); $bar->start(); $startTime = time(); $error = '用户已存在:'; foreach ($oldData as $key => $value){ $userId = $value->id ?? 0; // 判断是否存在 $exist = DB::table($newTableName)->where('id',$userId)->exists(); if($exist){ $error .= ','.$value->id; continue; } $newData =[ 'id'=>$userId, 'nick_name'=>$value->name ?? '', 'avatar'=>$value->img ?? '', 'openid'=>$value->openid ?? '', 'total_score'=>$value->total_score ?? 0, 'wallet'=>$value->wallet ?? 0, 'real_name'=>$value->user_name ?? '', 'tel'=>$value->user_tel ?? '', 'unionid'=>$value->unionid, 'created_at' => $value->join_time ?? time(), 'updated_at' => time(), ]; $res = DB::table($newTableName)->insert($newData); if(!$res){ $error[] = ['id'=>$userId,'msg'=>'添加失败']; break; } $bar->advance(); } $bar->finish(); var_dump([time()-$startTime]); var_dump($error); return 0; } }