Laravel 4 Laravel 4在提供计数变量时从foreach循环添加数字?
我正在将数组$cats传递给我的laravel模板视图。它是来自数据库事务的多维数组,包含类别数据。因此,它将包含如下数据:Laravel 4 Laravel 4在提供计数变量时从foreach循环添加数字?,laravel-4,Laravel 4,我正在将数组$cats传递给我的laravel模板视图。它是来自数据库事务的多维数组,包含类别数据。因此,它将包含如下数据: $cat[0]['id'] = 1; $cat[0]['name'] = 'First Category'; 等等。在我的刀片模板中,我有以下代码: {{ $i=0 }} @foreach($cats as $cat) {{ $cat['name'] }}<br />
$cat[0]['id'] = 1;
$cat[0]['name'] = 'First Category';
等等。在我的刀片模板中,我有以下代码:
{{ $i=0 }}
@foreach($cats as $cat)
{{ $cat['name'] }}<br />
{{ $i++ }}
@endforeach
请注意类别名称前面的数字。他们从哪里来?这是拉威尔的聪明把戏吗?似乎当您包含一个计数器变量时,它们会自动添加。我在任何地方都找不到这件事,我也不想要他们!我怎样才能摆脱它们
谢谢。blade中的
{{}
语法实质上是指回声。在循环的每个迭代中,您都在回显$i++
。如果您不希望此值回显,则应使用php标记进行包装。e、 g:
<?php $i=0 ?>
@foreach($cats as $cat)
{{ $cat['name'] }}<br />
<?php $i++ ?>
@endforeach
@foreach($cats作为$cat)
{{$cat['name']}}
@endforeach
另外,如果您选择在数组中工作,那么这就是您的选择,但除非您有特定的理由这样做,否则我鼓励您使用对象语法,laravel中雄辩的集合对象可以像数组一样迭代,但一旦你习惯了它,它会给你带来很多额外的好处。你可以使用一个内置的帮助程序:
{{$cat->incrementing}
你只需要使用简单的php翻译:
@foreach ($collection as $index => $element)
{{$index}} - {{$element['name']}}
@endforeach
编辑:
注意,$index
将从0
开始,因此它应该是{{$index+1}
<? php $i = 0 ?>
@foreach ( $variable_name as $value )
{{ $ value }}<br />
< ? php $i++ ?>
@endforeach
@foreach($variable\u name作为$value)
{{$value}}
< ? php$i++?>
@endforeach
哦,对了!好的,我现在明白了。谢谢也谢谢你的建议-你有没有链接到我可以在哪里读到“雄辩的收藏品”?没问题-你会喜欢拉威尔的。这里是一个很明显的地方,可以让文档在有说服力的集合中出现,但这也是一个很好的资源。是的,我一直在努力学习Dayle Rees教程。现在我意识到我最初的问题是错误的,$cats确实已经是一个集合对象而不是一个简单的数组,我只是没有意识到!谢谢。据我所知,$cat->incrementing
将指示ID是否自动递增?您的$I
将始终重置为0
<? php $i = 0 ?>
@foreach ( $variable_name as $value )
{{ $ value }}<br />
< ? php $i++ ?>
@endforeach
@foreach($cats as $cat)
{{ (isset($i))?$i++:($i = 0) }} - {{$cat['name']}}
@endforeach