0

私は次のphpを持っています、

 <ul>
<?php $count = count($products); ?>
            <?php for($i=0; $i < $count; $i++ ): ?>
            <li>
                <?php foreach ($products as $k => $v) : ?>
                    <div>
                        <a href="">
                            <img src="<?php echo base_url(); ?>media/images/products/<?php echo $v['product_image_small']; ?>" alt="<?php echo $v['product_title']; ?>" rel="<?php echo $v['product_id']; ?>"/>
                        </a>
                    </div>
                <?php endforeach; ?>
           </li>
            <?php endfor; ?>
        </ul>

私が達成したいのはli、最大 6 s のネストされたを作成することですdiv。6 divs になったら、新しい を作成したいと思いますli。上記のコードは現在、以下を作成しています。

<li>  
<div></div>  
<div></div>  
<div></div>  
<div></div>  
</li>

...ただし、products 配列のサイズによりdiv、 my には2 つしかないはずです。li

4

2 に答える 2

0

両方のループがネストされているため、2 回ではなく 2 x 2 回ループしています。forまたはのみを使用してくださいforeach

あなたの本当の質問に答えるには:次のようなものはどうですか...

echo "<li>";
for ($i = 0; $i < $count; $i++)
{
   // ...

   if ($i % 6 == 5)
     echo "</li><li>";    
}
echo "</li>";
于 2011-07-28T19:51:59.090 に答える
0

私はあなたの行を編集しました:

 <ul>
<?php $count = count($products); ?>
            <?php for($i=0; $i < $count; $i++ ): ?>
            <li>
                <?php foreach ($products as $k => $v) : ?>
                    <?php if($i % 4 == 0) echo '</li><li>'; ?>
                    <div>
                        <a href="">
                            <img src="<?php echo base_url(); ?>media/images/products/<?php echo $v['product_image_small']; ?>" alt="<?php echo $v['product_title']; ?>" rel="<?php echo $v['product_id']; ?>"/>
                        </a>
                    </div>
                <?php endforeach; ?>
           </li>
            <?php endfor; ?>
        </ul>

それが役立つことを願っています

于 2011-07-28T20:51:37.847 に答える