如何使用循环来跟踪 Laravel 代码?

Posted

技术标签:

【中文标题】如何使用循环来跟踪 Laravel 代码?【英文标题】:How to use loop for following Laravel code? 【发布时间】:2021-11-09 11:52:39 【问题描述】:
    $query1 =  User::where('sponser_id',$_SESSION['ruserid'])->get('userid');
    $count1= count($query1);
    
    $query2 =  User::whereIn('sponser_id',$query1)->get('userid');
    $count2= count($query2);

    $query3 =  User::whereIn('sponser_id',$query2)->get('userid');
    $count3= count($query3);

    $query4 =  User::whereIn('sponser_id',$query3)->get('userid');
    $count4= count($query4);

    $query5 =  User::whereIn('sponser_id',$query4)->get('userid');
    $count5= count($query5);

    $query6 =  User::whereIn('sponser_id',$query5)->get('userid');
    $count6= count($query6);

    $query7 =  User::whereIn('sponser_id',$query6)->get('userid');
    $count7= count($query7);

    $allcount=$count1+$count2+$count3+$count4+$count5+$count6+$count7;

我想计算用户的总下线。这段代码工作正常。但是如何使用循环来简化这段代码呢?

【问题讨论】:

看起来像一个金字塔模式应用程序;)有什么尝试?阅读本文以改善您的问题***.com/help/how-to-ask 你可以在你的for循环中使用$"query".$i,它允许你创建变量变量。 【参考方案1】:
            $allcount = 0;

            $query1 = User::where('sponser_id',$_SESSION['ruserid'])->get('userid');
            $count1 = count($query1);

            $allcount = $allcount + $count1;
            for ($i=2; $i<8; $i++) 
                
            if ($i>2)
                $j = $i-1;
                $"query".$j = User::whereIn('sponser_id',$"query".($j-1))->get('userid');
                
             
            $"query".$i = User::whereIn('sponser_id',$"query".($i-1))->get('userid');
            $"count".$i = count($"query".$i);

            $allcount = $allcount + $"count".$i;
            

            return $allcount;

【讨论】:

您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。

以上是关于如何使用循环来跟踪 Laravel 代码?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Laravel 的 PHP/Blade 中使用 Foreach 循环?

如何在脚本文件中使用 Laravel Blade?

如何在 Laravel 4 中跟踪用户下载?

如何在 api laravel 8 中跟踪文件的上传大小

如何在 laravel 中解码 Json 对象并在 laravel 中应用 foreach 循环

如何从循环中获取值到刀片 - laravel