原来的表中只有用户id 需要查用户名字 由于在不同数据库 无法用join
利用映射 通过用户id再找到用户名字
$ids = array();
foreach ($result as $value_s){
$ids[]=$value_s['user_id'];
}
$userid = implode(',',$ids);
//查用户表用户信息
$info = $this->usersMod->field('user_id,username')->where("user_id in(".$userid.")")->select();
//result有分页所有每次只查10个id
$arrMap = array();
foreach ($info as $key => $value_s){
$arrMap[$value_s['user_id']]=$value_s;//按字典排序 用户id作为键
}
foreach($result as &$value){
$user_id = $value['user_id'];
$user = $arrMap[$user_id];
$value['username'] =$user['username'];
}
不要用嵌套循环 循环次数太多次
题外补充 可以用做统计
$list = $this->b_topics_master_refMod->field("count(*) as count")->where('id_topic='.$value['id'])->find();