多次显示数组中的每个项目


Displaying each item in an array a number of times

嗨,伙计们,这似乎是一个非常基本的问题,我有一个类别数组,希望每个类别显示4次。它们都是向左浮动的,所以每个类别显示为一行4个框。

然而,也有一些div,它们是带有边框的框,在每次迭代时都会显示。这似乎奏效了,但我不知道这是否是正确的方法,因为所有类别没有组织。我希望每次循环跳到数组中的下一个项目时,第一件事就是出现特定类别的标题;欢迎任何帮助。请参阅下面的代码。

[CODE]
<section class="prodList">
                <?php  
                 $loop = 4;
                 $prodNum = 0;

                 $categories =    array("All","Clothes","Gadgets","Games");

                 foreach($categories as $cat){                       
                    echo "<h2> new cat: ".$cat."</h2>";
                     while($prodNum < count($categories)*$loop){

                            echo "<div class='viewerWishlistProdContainer'>
                                        <div class='prodImageContainer'>
                                        </div>
                            </div>
                            ";
                             echo "  <p>
                                            <button class='sortBtns' onClick='alert(''See all V'')'>See all V</button>
                                        </p>";
                            $prodNum ++;                        
                         }

                 }

[/CODE]

这样行吗?

<section class="prodList">
<?php  
$categories =    array("All","Clothes","Gadgets","Games");

foreach($categories as $cat){                      
  /** Since you know it should repeat four times, why not echo 4 times? */ 
  echo "<h2> new cat: ".$cat."</h2>";
  echo "<div style='display:inline-block;padding:5px'>". $cat . "</div>"; 
  echo "<div style='display:inline-block;padding:5px'>". $cat . "</div>";
  echo "<div style='display:inline-block;padding:5px'>". $cat . "</div>";
?>
<!-- You don't have to echo plain HTML -->
<div class='viewerWishlistProdContainer'>
  <div class='prodImageContainer'>
  </div>
</div>
<p>
    <button class='sortBtns' onClick='alert(''See all V'')'>See all V</button>
</p>    
<?php  } /** closing the foreach block */ ?>
</section>