3 回答

TA贡献1909条经验 获得超7个赞
你可能在该行出现错误,因为你试图在数组上设置属性
$all_students->fase_id = $item2->fase_id;
你应该把它改成
$item1->fase_id = $item2->fase_id;

TA贡献2039条经验 获得超7个赞
您的错误来自尝试设置数组 ($all_students) 的“fase_id”属性而不是“item1”。
//You should be setting
$item1->fase_id = ...
//instead of
$all_students->fase_id =
此外,如果您创建一个关联数组(学生 id 是关键),您只能使用一个循环。如果您的数组 $ar_student 是 [student_id => student] 那么:
foreach($all_students as $item1){
if( isset($ar_student[$item1->student_id]) ){
$item1->fase_id = $ar_student[$item1->student_id]->fase_id);
}
}

TA贡献1725条经验 获得超7个赞
错误的原因是 $all_students->fase_id因为all_students是收集,因此您可以在这里做两件事来修复错误。如果您真的想先保持$all_student更新foreach,$all_students[$key]->fase_id如下所示,
foreach($all_students as $key => $item1){
foreach($ar_student as $item2){
if($item1->student_id == $item2->student_id){
$all_students[$key]->fase_id = $item2->fase_id;
}
}
}
否则使用$item1->fase_id如下所示,
$item1->fase_id = $item2->fase_id;
- 3 回答
- 0 关注
- 208 浏览
添加回答
举报