Foreach在foreach循环中循环

时间:2014-01-14 14:04:16

标签: php foreach nested-loops

我正在尝试创建一个随机3列网格,行可以是3个设置中的1个,

1)3 x 1/3宽度div 2)1 x 1/3宽度div& 1 x 2/3 div 3)1 x 2/3宽度div& 1 x 1/3 div

我将这些选项存储在数组中,然后我正在做的是使其随机化,

shuffle($columns)

这会从数组中创建一个随机选择,然后循环我的主数据数组(保存div的内容的数组),然后在colunm数组的循环中吐出前端HTML。

<div class="item-wrapper">

<?php 
    //$last = "";
    $columns = array(
        array('single', 'single', 'single'),
        array('double', 'single'),
        array('single', 'double')
    );  



?>

@foreach($portfolio as $item)

    @foreach($columns[0] as $k => $v)   
        <div class="item item--<?php echo $v; ?>">
            <?php echo $item['name']; ?>
        </div>

    @endforeach

@endforeach

然而,这似乎是我的主要数据循环多次,我想要的是循环主数据,并将数据吐出到具有列数组中的类的div。

我想要一个看起来像这样的输出,

<div class="item item--single">Project 1</div>  
<div class="item item--double">Project 2</div>  
<div class="item item--single">Project 3</div>  
<div class="item item--single">Project 4</div>  
<div class="item item--single">Project 5</div>
<div class="item item--single">Project 6</div>  
<div class="item item--double">Project 7</div>
<div class="item item--double">Project 8</div>  
<div class="item item--single">Project 9</div>

这可能吗?

1 个答案:

答案 0 :(得分:1)

要遍历内部数组,我会说你应该使用$ item而不是$ column [0]那里(未经测试):

@foreach($portfolio as $item)

-->    @foreach($item as $k => $v)        
        <div class="item item--<?php echo $v; ?>">
            <?php echo $item['name']; ?>
        </div>

    @endforeach

@endforeach