Laravel 如何在一个 foreach 循环中打印两个数组
How to print two array in one foreach loop in Laravel
我在这个 forech 循环中打印这两个数组。如果我 select 提交后的最后一个复选框项目,它将检查第一个项目,而不是检查最后一个项目。那是我的问题。
这是我的代码示例图片
问题
我也在尝试其他问题的答案,但对我不起作用。
How to use multiple arrays in " single " foreach() loop
Two arrays in foreach loop
How to display two arrays in one foreach loop?
提前致谢。
我的blade代码:
@elseif(isset($groupsData) && !$groupsData->isEmpty() or isset($qids) && !$qids->isEmpty())
<?php $i = 0; ?>
@foreach($groupsData as $key => $data)
<?php $i++; ?>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="{{ $data->id }}" class="check_checkbox" @if(isset($qids[$key]->group_id)) {{ 'checked' }} @endif ></label></td>
<td>{{ $i }}</td>
<td>{{ $data->group_name }}</td>
</tr>
@endforeach @else
这是print_r代码:
Illuminate\Database\Eloquent\Collection Object
(
[items:protected] => 数组
(
[0] => App\QuizGroupQuestionId Object
(
[fillable:protected] => 数组
(
[0] => quiz_id
[1] => group_id
[2] => question_id
)
[dates:protected] => Array
(
[0] => deleted_at
)
[connection:protected] => mysql
[table:protected] =>
[primaryKey:protected] => id
[keyType:protected] => int
[incrementing] => 1
[with:protected] => Array
(
)
[withCount:protected] => Array
(
)
[perPage:protected] => 15
[exists] => 1
[wasRecentlyCreated] =>
[attributes:protected] => Array
(
[id] => 12
[quiz_id] => 1
[group_id] => 8
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[original:protected] => Array
(
[id] => 12
[quiz_id] => 1
[group_id] => 8
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[casts:protected] => Array
(
)
[dateFormat:protected] =>
[appends:protected] => Array
(
)
[events:protected] => Array
(
)
[observables:protected] => Array
(
)
[relations:protected] => Array
(
)
[touches:protected] => Array
(
)
[timestamps] => 1
[hidden:protected] => Array
(
)
[visible:protected] => Array
(
)
[guarded:protected] => Array
(
[0] => *
)
[forceDeleting:protected] =>
)
[1] => App\QuizGroupQuestionId Object
(
[fillable:protected] => Array
(
[0] => quiz_id
[1] => group_id
[2] => question_id
)
[dates:protected] => Array
(
[0] => deleted_at
)
[connection:protected] => mysql
[table:protected] =>
[primaryKey:protected] => id
[keyType:protected] => int
[incrementing] => 1
[with:protected] => Array
(
)
[withCount:protected] => Array
(
)
[perPage:protected] => 15
[exists] => 1
[wasRecentlyCreated] =>
[attributes:protected] => Array
(
[id] => 13
[quiz_id] => 1
[group_id] => 9
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[original:protected] => Array
(
[id] => 13
[quiz_id] => 1
[group_id] => 9
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[casts:protected] => Array
(
)
[dateFormat:protected] =>
[appends:protected] => Array
(
)
[events:protected] => Array
(
)
[observables:protected] => Array
(
)
[relations:protected] => Array
(
)
[touches:protected] => Array
(
)
[timestamps] => 1
[hidden:protected] => Array
(
)
[visible:protected] => Array
(
)
[guarded:protected] => Array
(
[0] => *
)
[forceDeleting:protected] =>
)
[2] => App\QuizGroupQuestionId Object
(
[fillable:protected] => Array
(
[0] => quiz_id
[1] => group_id
[2] => question_id
)
[dates:protected] => Array
(
[0] => deleted_at
)
[connection:protected] => mysql
[table:protected] =>
[primaryKey:protected] => id
[keyType:protected] => int
[incrementing] => 1
[with:protected] => Array
(
)
[withCount:protected] => Array
(
)
[perPage:protected] => 15
[exists] => 1
[wasRecentlyCreated] =>
[attributes:protected] => Array
(
[id] => 14
[quiz_id] => 1
[group_id] => 10
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[original:protected] => Array
(
[id] => 14
[quiz_id] => 1
[group_id] => 10
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[casts:protected] => Array
(
)
[dateFormat:protected] =>
[appends:protected] => Array
(
)
[events:protected] => Array
(
)
[observables:protected] => Array
(
)
[relations:protected] => Array
(
)
[touches:protected] => Array
(
)
[timestamps] => 1
[hidden:protected] => Array
(
)
[visible:protected] => Array
(
)
[guarded:protected] => Array
(
[0] => *
)
[forceDeleting:protected] =>
)
)
)
呈现 html 代码:
<table class="table table-striped table-bordered table-hover table-responsive">
<thead>
<tr>
<th><label><input name="group_all" class="checked_all" type="checkbox"> Select All</label></th>
<th>#</th>
<th>Group Name</th>
</tr>
</thead>
<tbody>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="4" class="check_checkbox" checked ></label></td>
<td>1</td>
<td>jkl</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="5" class="check_checkbox" checked ></label></td>
<td>2</td>
<td>mno</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="7" class="check_checkbox" checked ></label></td>
<td>3</td>
<td>rthytr4y</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="8" class="check_checkbox" ></label></td>
<td>4</td>
<td>erter</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="9" class="check_checkbox" ></label></td>
<td>5</td>
<td>wetret</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="10" class="check_checkbox" ></label></td>
<td>6</td>
<td>yhjjyukji</td>
</tr>
</tbody>
</table>
ok,可以看到所有单选按钮都被勾选了。你需要有更好的检查。使用此检查,请根据 blade 语法修复语法。但基本上你是在比较 $qids 中的 group_id 和 $data.
中的 id
@if(isset($qids[$key]->group_id) && $qids[$key]->group_id == $data->$id ) {{ 'checked' }} @endif
我使用两个 php 数组函数解决了我的问题。
这是我解决的代码:
@elseif(isset($groupsData) && !$groupsData->isEmpty() or isset($qids) && !$qids->isEmpty())
<?php
$i = 0;
$gids = array_column($qids->toArray(),'group_id');
?>
@foreach($groupsData as $key => $data)
<?php $i++; ?>
<tr>
<td><label>
<input type="checkbox" name="groups_id[]" value="{{ $data->id }}" class="check_checkbox" @if(in_array($data->id,$gids)) {{ 'checked' }} @endif >
</label></td>
<td>{{ $i }}</td>
<td>{{ $data->group_name }}</td>
</tr>
@endforeach
@else
截图:
我在这个 forech 循环中打印这两个数组。如果我 select 提交后的最后一个复选框项目,它将检查第一个项目,而不是检查最后一个项目。那是我的问题。
这是我的代码示例图片
问题
我也在尝试其他问题的答案,但对我不起作用。
How to use multiple arrays in " single " foreach() loop
Two arrays in foreach loop
How to display two arrays in one foreach loop?
提前致谢。
我的blade代码:
@elseif(isset($groupsData) && !$groupsData->isEmpty() or isset($qids) && !$qids->isEmpty())
<?php $i = 0; ?>
@foreach($groupsData as $key => $data)
<?php $i++; ?>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="{{ $data->id }}" class="check_checkbox" @if(isset($qids[$key]->group_id)) {{ 'checked' }} @endif ></label></td>
<td>{{ $i }}</td>
<td>{{ $data->group_name }}</td>
</tr>
@endforeach @else
这是print_r代码:
Illuminate\Database\Eloquent\Collection Object
( [items:protected] => 数组 ( [0] => App\QuizGroupQuestionId Object ( [fillable:protected] => 数组 ( [0] => quiz_id [1] => group_id [2] => question_id )
[dates:protected] => Array
(
[0] => deleted_at
)
[connection:protected] => mysql
[table:protected] =>
[primaryKey:protected] => id
[keyType:protected] => int
[incrementing] => 1
[with:protected] => Array
(
)
[withCount:protected] => Array
(
)
[perPage:protected] => 15
[exists] => 1
[wasRecentlyCreated] =>
[attributes:protected] => Array
(
[id] => 12
[quiz_id] => 1
[group_id] => 8
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[original:protected] => Array
(
[id] => 12
[quiz_id] => 1
[group_id] => 8
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[casts:protected] => Array
(
)
[dateFormat:protected] =>
[appends:protected] => Array
(
)
[events:protected] => Array
(
)
[observables:protected] => Array
(
)
[relations:protected] => Array
(
)
[touches:protected] => Array
(
)
[timestamps] => 1
[hidden:protected] => Array
(
)
[visible:protected] => Array
(
)
[guarded:protected] => Array
(
[0] => *
)
[forceDeleting:protected] =>
)
[1] => App\QuizGroupQuestionId Object
(
[fillable:protected] => Array
(
[0] => quiz_id
[1] => group_id
[2] => question_id
)
[dates:protected] => Array
(
[0] => deleted_at
)
[connection:protected] => mysql
[table:protected] =>
[primaryKey:protected] => id
[keyType:protected] => int
[incrementing] => 1
[with:protected] => Array
(
)
[withCount:protected] => Array
(
)
[perPage:protected] => 15
[exists] => 1
[wasRecentlyCreated] =>
[attributes:protected] => Array
(
[id] => 13
[quiz_id] => 1
[group_id] => 9
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[original:protected] => Array
(
[id] => 13
[quiz_id] => 1
[group_id] => 9
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[casts:protected] => Array
(
)
[dateFormat:protected] =>
[appends:protected] => Array
(
)
[events:protected] => Array
(
)
[observables:protected] => Array
(
)
[relations:protected] => Array
(
)
[touches:protected] => Array
(
)
[timestamps] => 1
[hidden:protected] => Array
(
)
[visible:protected] => Array
(
)
[guarded:protected] => Array
(
[0] => *
)
[forceDeleting:protected] =>
)
[2] => App\QuizGroupQuestionId Object
(
[fillable:protected] => Array
(
[0] => quiz_id
[1] => group_id
[2] => question_id
)
[dates:protected] => Array
(
[0] => deleted_at
)
[connection:protected] => mysql
[table:protected] =>
[primaryKey:protected] => id
[keyType:protected] => int
[incrementing] => 1
[with:protected] => Array
(
)
[withCount:protected] => Array
(
)
[perPage:protected] => 15
[exists] => 1
[wasRecentlyCreated] =>
[attributes:protected] => Array
(
[id] => 14
[quiz_id] => 1
[group_id] => 10
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[original:protected] => Array
(
[id] => 14
[quiz_id] => 1
[group_id] => 10
[question_id] =>
[created_at] => 2017-07-22 18:56:54
[updated_at] => 2017-07-22 18:56:54
[deleted_at] =>
)
[casts:protected] => Array
(
)
[dateFormat:protected] =>
[appends:protected] => Array
(
)
[events:protected] => Array
(
)
[observables:protected] => Array
(
)
[relations:protected] => Array
(
)
[touches:protected] => Array
(
)
[timestamps] => 1
[hidden:protected] => Array
(
)
[visible:protected] => Array
(
)
[guarded:protected] => Array
(
[0] => *
)
[forceDeleting:protected] =>
)
)
)
呈现 html 代码:
<table class="table table-striped table-bordered table-hover table-responsive">
<thead>
<tr>
<th><label><input name="group_all" class="checked_all" type="checkbox"> Select All</label></th>
<th>#</th>
<th>Group Name</th>
</tr>
</thead>
<tbody>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="4" class="check_checkbox" checked ></label></td>
<td>1</td>
<td>jkl</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="5" class="check_checkbox" checked ></label></td>
<td>2</td>
<td>mno</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="7" class="check_checkbox" checked ></label></td>
<td>3</td>
<td>rthytr4y</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="8" class="check_checkbox" ></label></td>
<td>4</td>
<td>erter</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="9" class="check_checkbox" ></label></td>
<td>5</td>
<td>wetret</td>
</tr>
<tr>
<td><label><input type="checkbox" name="groups_id[]" value="10" class="check_checkbox" ></label></td>
<td>6</td>
<td>yhjjyukji</td>
</tr>
</tbody>
</table>
ok,可以看到所有单选按钮都被勾选了。你需要有更好的检查。使用此检查,请根据 blade 语法修复语法。但基本上你是在比较 $qids 中的 group_id 和 $data.
中的 id@if(isset($qids[$key]->group_id) && $qids[$key]->group_id == $data->$id ) {{ 'checked' }} @endif
我使用两个 php 数组函数解决了我的问题。
这是我解决的代码:
@elseif(isset($groupsData) && !$groupsData->isEmpty() or isset($qids) && !$qids->isEmpty())
<?php
$i = 0;
$gids = array_column($qids->toArray(),'group_id');
?>
@foreach($groupsData as $key => $data)
<?php $i++; ?>
<tr>
<td><label>
<input type="checkbox" name="groups_id[]" value="{{ $data->id }}" class="check_checkbox" @if(in_array($data->id,$gids)) {{ 'checked' }} @endif >
</label></td>
<td>{{ $i }}</td>
<td>{{ $data->group_name }}</td>
</tr>
@endforeach
@else
截图: