我想将"区域"存储在$school_info array
的$area
变量中。使用$area
我希望将更多的 3 行存储到 3 个不同的数组中,例如:$school_info1
、$school_info2
、$school_info3
。
public function schooldetailviewid($id)
{
$school_id = $id;
$school_info = DB::table('school_infos')->where('school_id', '=', $school_id)->get();
$area = $school_info->area;
// recomendation start
$school_info1 = DB::table('school_infos')->where('area', '=', $area)->get();
$school_info2 = DB::table('school_infos')->where('area', '=', $area)->get();
$school_info3 = DB::table('school_infos')->where('area', '=', $area)->get();
// recomendation end
return view('schooldetail', compact('school_info', 'school_info1', 'school_info2', 'school_info3'));
}
问题:元素的存储不起作用,而且没有获取另外 3 行!我正在尝试制作一个简单的推荐系统。
错误
异常属性 [区域] 在此集合实例上不存在。
.get()
返回一个对象数组,以仅获取一个对象使用.first()
:
$school_info = DB::table('school_infos')->where('school_id', '=', $school_id)->first();
$area = $school_info->area;
否则,您需要访问数组的第一个元素:
$school_info = DB::table('school_infos')->where('school_id', '=', $school_id)->get();
$area = $school_info[0]->area;