具有2个路径标签的数组AllPathsTasgs[]
在示例中
[
"php",
"HTML5",
"CSS3",
"XML"
],
[
"HTML5",
"CSS3",
"JavaScript",
"Bootstrab"
]
我正在尝试使用下面的行来访问具有路径标签之类的任务
$query->whereNotIn('name', $AllPathsTasgs[$x]);
并且可以很好地使用第一个路径,但是它在每个路径中都使用第一个数组 表示
第一个路径应类似于
$query->whereNotIn('name', $AllPathsTasgs[$x]); and x here = 0
没关系,但是问题出在下一个路径
$query->whereNotIn('name', $AllPathsTasgs[$x]); x = 0 not 1
不知道为什么会发生
foreach ($paths as $path){
$AllPathsTasgs[] = $path->pathtags->pluck('name');
}
$posts3 = Path::with(['ProgrammingField','pathtags' => function ($q) use ($AllPathsTasgs,$pathsTags) {
$q->with(['Tasks' => function ($q) use ($AllPathsTasgs,$pathsTags) {
$q->has('tasktags', '=', 2)
->orderBy('id', 'ASC')
->whereDoesntHave('tasktags', function ($query) use ($AllPathsTasgs,$pathsTags) {
for ($x = 0; $x < count($pathsTags); $x++) {
$query->whereNotIn('name', $AllPathsTasgs[$x]);
}
})->with('tasktags')->orderBy('id', 'ASC');
}]);
}])->whereIn('id',$pathId)->get();