我将数组$ cats传递给我的laravel模板视图.它是来自数据库事务的多维数组,包含类别数据.所以它将包含如下数据:
$cat[0]['id'] = 1;
$cat[0]['name'] = 'First Category';
Run Code Online (Sandbox Code Playgroud)
等等.在我的刀片模板中,我有以下代码:
{{ $i=0 }}
@foreach($cats as $cat)
{{ $cat['name'] }}<br />
{{ $i++ }}
@endforeach
Run Code Online (Sandbox Code Playgroud)
哪个输出:
0 First Category
1 Second Category
2 Third Category
Run Code Online (Sandbox Code Playgroud)
注意类别名称前面的数字.他们来自哪里?这是一些聪明的Laravel技巧吗?似乎当您包含计数器变量时,它们会自动添加.我在任何地方都找不到它,我不想要它们!我怎么摆脱他们?
谢谢.
小智 65
你只需要使用普通的PHP翻译:
@foreach ($collection as $index => $element)
{{$index}} - {{$element['name']}}
@endforeach
Run Code Online (Sandbox Code Playgroud)
编辑:
请注意,$index它将从0,应该是{{ $index+1 }}
Swi*_*ftD 11
{{ }}刀片中的语法本质上意味着回声.你$i++在循环的每次迭代中都会回显.如果你不希望这个值回应你应该改为包装在php标签中.例如:
<?php $i=0 ?>
@foreach($cats as $cat)
{{ $cat['name'] }}<br />
<?php $i++ ?>
@endforeach
Run Code Online (Sandbox Code Playgroud)
另外需要注意的是,如果你选择在数组中工作那么你的调用就是这样,但除非你有特定的理由这样做我鼓励你使用对象语法,laravel中的雄辩集合对象可以像数组一样迭代但是给出一旦你习惯了,你会得到很多额外的糖.
| 归档时间: |
|
| 查看次数: |
40078 次 |
| 最近记录: |