php - For循环在laravel控制器中不起作用
问题描述
For Loop Not Working $AllPathsTasgs 有 2 个数组所以 count($AllPathsTasgs) 将返回 2 my 而我返回 2 路径所以它应该首先使用
$x == 0
那么应该使用
$x == 1
但它使用
$x == 1
对于拖车,路径不知道为什么
虽然我用过 dd($x); 它正确返回 $x
任何帮助请
foreach ($paths as $path){
$AllPathsTasgs[] = $path->pathtags->pluck('name');
}
$posts3 = Path::with(['ProgrammingField','pathtags' => function ($q) use ($AllPathsTasgs) {
for ($x = 0; $x < count($AllPathsTasgs); $x++) {
if ($x == 0) {
$q->with(['Tasks' => function ($q) use ($AllPathsTasgs, $x) {
$q->has('tasktags', '=', 2)
->orderBy('id', 'ASC')
->whereDoesntHave('tasktags', function ($query) use ($AllPathsTasgs, $x) {
$query->whereNotIn('name', $AllPathsTasgs[0]);
})->with('tasktags')->orderBy('id', 'ASC');
}]);
}
if ($x == 1) {
$q->with(['Tasks' => function ($q) use ($AllPathsTasgs, $x) {
$q->has('tasktags', '=', 2)
->orderBy('id', 'ASC')
->whereDoesntHave('tasktags', function ($query) use ($AllPathsTasgs, $x) {
$query->whereNotIn('name', $AllPathsTasgs[1]);
})->with('tasktags')->orderBy('id', 'ASC');
}]);
}
}
}])->whereIn('id',$pathId)->get();
解决方案
把这个写在循环里面,我们就在外面。
foreach ($paths as $path){
$AllPathsTasgs[] = $path->pathtags->pluck('name');
$posts3 = Path::with(['ProgrammingField','pathtags' => function ($q) use ($AllPathsTasgs) {
for ($x = 0; $x < count($AllPathsTasgs); $x++) {
if ($x == 0 ){
$q->with(['Tasks' => function ($q) use ($AllPathsTasgs,$x) {
$q->has('tasktags', '=', 2)
->orderBy('id', 'ASC')
->whereDoesntHave('tasktags', function ($query) use ($AllPathsTasgs,$x) {
$query->whereNotIn('name', $AllPathsTasgs[0]);
})->with('tasktags')->orderBy('id', 'ASC');
}]);
}
if ($x == 1 ){
$q->with(['Tasks' => function ($q) use ($AllPathsTasgs,$x) {
$q->has('tasktags', '=', 2)
->orderBy('id', 'ASC')
->whereDoesntHave('tasktags', function ($query) use ($AllPathsTasgs,$x) {
$query->whereNotIn('name', $AllPathsTasgs[1]);
})->with('tasktags')->orderBy('id', 'ASC');
}]);
}
推荐阅读
- python - 如何传递多个图像以对 tensorflow 服务进行多批处理?
- javascript - 服务器连接失败后(在 JavaScript 中使用 fetch)如何从下载(服务器路径)重定向到登录表单?
- javascript - React Hook useEffect 缺少依赖项:'getData'。包括它或删除依赖数组
- c# - 无法在 IIS Express 中运行 ASP.NET Core Web API 项目
- sql - SQL中列的最小和最大长度
- windows - 使用 Powershell 在 Win 10 系统环境中设置持久的系统范围路径
- github - 如何在拉取请求基础分支更新时重新运行 Github Actions 工作流程
- c++ - `free() 的结果:无效的下一个大小(快速):0x00005643b9765c80` 尽管调试输出正确
- c# - 如何在 Xamarin.Forms 中实现经典媒体选择器?
- c# - 不确定我是否正在创建正确的生命周期范围