首页 > 解决方案 > Laravel 将值从控制器中的 foreach 循环传递到视图

问题描述

我正在尝试从foreach控制器中的循环中获取数据以传递给我的视图。我该怎么做?

控制器

class FormteachersController extends Controller
{
    public function form_teachers_view(){
        $UniqueStudent = Student::where('Student_ClassID','JSS 1C')->get();
        foreach ($UniqueStudent as $keydata) {
            $student = $keydata->Stud_id;
            $result= Result::where('Term_ID','1st Term')->where('Student_ID',$student)->where('Class_ID','JSS 1C')->where('Session_ID','2225/2222')->get();
            foreach ($result as $keyresult) {
                echo '<br>'.'<br>'.$student.'-'.$result;
            }
            return view('teachers.form_teachers_comment_sec');
        }
    }
}

这是输出

标签: laravellaravel-5laravel-7

解决方案


你可以这样做:

class FormteachersController extends Controller
{
    public function form_teachers_view(){
        $uniqueStudent = Student::where('Student_ClassID','JSS 1C')->get();
        $uniqueStudentsData = [] ;
        foreach ($uniqueStudent as $keydata) {
            $student = $keydata->Stud_id;
            $result = Result::where('Term_ID','1st Term')->where('Student_ID',$student)->where('Class_ID','JSS 1C')->where('Session_ID','2225/2222')->get();
            foreach ($result as $keyresult) {
                $uniqueStudentsData[] = '<br>'.'<br>'. $student.'-'. $keyresult;
            }
        }

        return view('teachers.form_teachers_comment_sec', compact('uniqueStudentsData'));

        // or pass array

        return view('teachers.form_teachers_comment_sec',[
            'uniqueStudentsData' => $uniqueStudentsData,
        ]);
    }
}

现在,在您的 中form_teachers_comment_sec.blade.php,运行您的 foreach 循环并执行您想要的操作

// $uniqueStudentsData
@foreach($uniqueStudentsData as $data)
        // do what do you want
@endforeach

希望它会奏效。更多文档请访问laravel 文档


推荐阅读