0

这是我的查询:

$albix = DB::table('albi')
  ->select(['albi.id'])
  ->join('albi_user', 'albi.id', '=', 'albi_user.albi_id')
  ->where('user_id', '=', $user_id)
  ->get();

这是我foreach应该检索多个项目的循环:

foreach ($albix as $a) {
    return $albi->id == $a->id ? 'alert-warning' : '';
}

为什么这不起作用?

4

2 回答 2

0

返回停止你的循环

if($albi->id == $a->id){ return 'alert-warning';}

$data = []
foreach ($albix as $a) {
   $data[$a->id] = $albi->id == $a->id ? 'alert-warning' : '';
}
return $data;
于 2017-09-24T15:43:18.980 回答
0

循环遍历数据库结果,如果id相同,则返回正确的对象:

$user = (object)['id' => '123'];
foreach ($db_results as $row) {
    if ($user->id == $row->id) {
        return $row;
    }
}
return []; // id not found, handle your fallback

在你的情况下:

foreach ($albix as $a) {
    if ($albi->id == $a->id) {
        return $a;
    }
}
return []; // id not found, handle your fallback
于 2017-09-24T18:01:24.107 回答