如何使用循环来跟踪 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 循环?