PHP Laravel打破foreach循环2次

Rox*_*Rox 3 php foreach laravel

有三个foreach循环,在最后一个foreach循环中有一个if条件,

foreach ($candidate_data as $cd) {
        $edu_data=DB::table('applicant_edu_info')
        ->where('applicant_id',$cd->ap_id)
        ->get();
            foreach($edu_data as $ed){
                foreach($neededDegree as $nd){
                    if($neededDegree->edu_degree_id==$ed->edu_degree_id){
                        $education_data[$cd->ap_id]=$neededDegree->name;

                    }
                }
            }
    }
Run Code Online (Sandbox Code Playgroud)

我需要的是,如果条件为真,那么我想打破两个循环并继续从第一个foreach循环运行.请帮忙.

Sap*_*aik 5

在PHP中,您可以使用可选的break参数.

使用 break 2;

foreach ($candidate_data as $cd) {
        $edu_data=DB::table('applicant_edu_info')
        ->where('applicant_id',$cd->ap_id)
        ->get();
            foreach($edu_data as $ed){
                foreach($neededDegree as $nd){
                    if($neededDegree->edu_degree_id==$ed->edu_degree_id){
                        $education_data[$cd->ap_id]=$neededDegree->name;
                         break 2;

                    }
                }
            }
    }
Run Code Online (Sandbox Code Playgroud)

break 2 将打破两个循环.

文档:http://php.net/manual/en/control-structures.break.php