为了账号安全,请及时绑定邮箱和手机立即绑定

在 Laravel 中循环 return view('pageName', [ loop]

在 Laravel 中循环 return view('pageName', [ loop]

PHP
慕工程0101907 2022-01-02 19:50:44
我正在尝试使用insinde laravel 循环return view()来传递多个变量。这样就不需要对它们进行硬编码,这个列表有 30 个项目,它总是随机选择 8 个值。所以这是我的代码 return view ( 'shop.landing' , [            for($z = 0 ; $z <8 ;$z++){                'productMatchesToMasterCategory' => ($masterCategoryList[$z]['name'].$productMatchesToMasterCategory);            }            'tomorrow' => Carbon::tomorrow () ,这是快照那么任何人都可以告诉我的代码有什么问题,还是不允许在内部使用循环view()?
查看完整描述

3 回答

?
倚天杖

TA贡献1828条经验 获得超3个赞

您不能在数组语法中使用循环。解决的办法是在外面构建数组,然后作为参数传递。我不确定您正在寻找的确切结构,但类似于这样:


$data = [];


for ($z = 0; $z < 8; $z++) {

    $data[] = ($masterCategoryList[$z]['name'] . $productMatchesToMasterCategory);

}


return view('shop.landing', [

    'productMatchesToMasterCategory' => $data,

    'tomorrow' => Carbon::tomorrow(),

]);


查看完整回答
反对 回复 2022-01-02
?
烙印99

TA贡献1829条经验 获得超13个赞

您应该在返回视图之前执行此操作:


$productMatchesToMasterCategoryArray = [];

for($z = 0; $z < 8; $z++) {

    $productMatchesToMasterCategoryArray[] = ($masterCategoryList[$z]['name'].$productMatchesToMasterCategory);     

}


return view('shop.landing', [

    'productMatchesToMasterCategory' => $productMatchesToMasterCategoryArray

    //Other variables here

]);

希望能帮助到你。


查看完整回答
反对 回复 2022-01-02
?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

您可以尝试在返回视图之前获取随机 8 个元素的数组。


$productMatchesToMasterCategoryArray = [];

foreach($masterCategoryList as $z){

    $productMatchesToMasterCategoryArray[] = ($z['name'].$productMatchesToMasterCategory);

}

$random_Array=array_rand($productMatchesToMasterCategoryArray,8);

return view('shop.landing', [

    'productMatchesToMasterCategory' => $random_Array,

    'tomorrow' => Carbon::tomorrow(),

]);


查看完整回答
反对 回复 2022-01-02
  • 3 回答
  • 0 关注
  • 271 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号