Php laravel叶片一个Foreach回路中的多个可变通道
控制器中有两个变量:Php laravel叶片一个Foreach回路中的多个可变通道,php,laravel,laravel-5.5,laravel-blade,Php,Laravel,Laravel 5.5,Laravel Blade,控制器中有两个变量: $data = S_core_Country::all(); $cn=\DB::table('s_user_addresses') ->join('s_users', 's_users.id', '=', 's_user_addresses.user_id') ->join('s_core_countries', 's_core_countries.id', '=', 's_user_addresses.country_id') ->va
$data = S_core_Country::all();
$cn=\DB::table('s_user_addresses')
->join('s_users', 's_users.id', '=', 's_user_addresses.user_id')
->join('s_core_countries', 's_core_countries.id', '=', 's_user_addresses.country_id')
->value('countryname');
return view('home')->with(['data'=>$data,'cn'=>$cn]);
可以这样在foreach循环中查看我的数据吗
@foreach($data as $data && $cn as $cn)
如果不是,我应该如何在一个foreach循环中显示这两个变量?不幸的是,foreach不是有效的PHP或Blade语法 我要做的是,充分利用Laravel框架,使用雄辩的ORM在用户、地址和国家之间建立关系。然后,在刀片模板中,您应该能够执行以下操作: 如果$data包含用户:
@foreach($data as $user)
$user->address->country->countryname
@endforeach
当然,这取决于您在用户、国家/地区和地址模型中定义了关系
用户模型可能包含的内容示例:
public function address()
{
return $this->hasOne('UserAddress', 'foreign_key', 'local_key');
}
上面的代码只是一个示例,显然需要用正确的值替换它。请参阅,但我肯定认为在这里设置适当的ORM关系是一种方法,至少我会这么做。对于合并和合并数组,您可以尝试:
$array = array_merge($array1,$array2);
刀片中的示例:
@foreach(array_merge($array1,$array2) as $item)
// ...
@endforeach
另一个例子:
@foreach($array1 as $key => $row)
<li>
<b>{{ $row['id'] }}</b>
<p>{{ $array2[$key]->payment }}</p>
</li>
@endforeach
@foreach($array1作为$key=>$row)
{{$row['id']}
{{$array2[$key]>payment}
@endforeach
相关链接:
&&运算符(and)是一个逻辑运算符 如果$a和$b都为TRUE,则为$a&&$b和TRUE