2014-09-19 88 views
1

我有一个包含38条记录的数组。用Laravel Blade迭代PHP阵列,然后在HTML中添加列

迭代了前10个之后,我希望它在新列上开始。

这是非常简单的例子如下,但是,我需要在HTML中增加这使得它难以:

@for($i = 0; $i < count($records); $i++) 
    @if($i % 10 == 0) 
     //start new column 
    @endif 

    <li><a href="#">{{ $records[$i]['name'] }}</a></li> 
@endfor 

的HTML是什么样子没有循环,它应该是什么样子后循环正确:

<li class="col-sm-3"> 
    <li class="dropdown-header"> 
     Record Set 
    </li> 
    <li><a href="#">Record Name</a></li> 
    <li><a href="#">Record Name</a></li> 
    <li><a href="#">Record Name</a></li> 
</li> 

的问题是,经过10条记录,我需要它来摆脱col-sm-3,开始新col-sm-3没有dropdown-header但每个迭代的n的记录名称。

这怎么办?如果需要澄清,请提问。

回答

2

如果它是一个数组,那么你可以使用array_chunk

@foreach(array_chunk($records, 10) as $ten_arrays) 
    <li class="col-sm-3"> 
     @foreach($ten_arrays as $record) 
      {{ $record['field_name'] }} 
     @endforeach 
    </li> 
@endforeach 

这将输出li就像这样:

<li class="col-sm-3"> 
    <!-- Ten Items --> 
</li> 

<li class="col-sm-3"> 
    <!-- Ten Items --> 
</li> 
+0

我得到未定义指数为我的数组中的键。 – asgwar12 2014-09-19 21:28:14

+0

你在'array'中有什么字段? – 2014-09-19 21:29:10

+0

作品非常感谢。 – asgwar12 2014-09-19 21:30:28