dongxiqian2787 2013-02-20 16:14
浏览 38
已采纳

如何使用foreach或SPL在每两个项目中添加一个html元素?

How can I interrupt a loop and adding an html element at each two iterations? Can a simple foreach do that or something in SPL?

<?php foreach($items as $index=>$item): ?>
     <li>$item->title</li>
     <?php if($index + 1 = 2):?>
     <div class="divider"></div>
     <?php endif;?> 
<?php endforeach;?>

html result,

<li>title 1</li>
<li>title 2</li>
<div class="divider"></div>
<li>title 3</li>
<li>title 4</li>
<div class="divider"></div>
<li>title 5</li>
<li>title 6</li>
<div class="divider"></div>

EDIT:

<li>title 1</li>
<li>title 2</li>
<li>title 3</li>
<div class="divider"></div>
<li>title 4</li>
<li>title 5</li>
<div class="divider"></div>
<li>title 6</li>
  • 写回答

2条回答 默认 最新

  • duannaoye0732 2013-02-20 16:33
    关注

    For this result :

    <li>title 1</li>
    <li>title 2</li>
    <div class="divider"></div>
    <li>title 3</li>
    <li>title 4</li>
    <div class="divider"></div>
    <li>title 5</li>
    <li>title 6</li>
    <div class="divider"></div>
    

    Do this with modulus 2 :

    <?php 
    foreach($items as $index=>$item) {
      if ($îndex % 2 = 0) {
    ?>
    <?php // <!-- ADD HTML HERE !> ?>
    <li>$item->title</li>
    <?php
      } else {
    ?>
    <li>$item->title</li>
    <?php
      }
    }
    ?>
    

    For this result :

    <li>title 1</li>
    <li>title 2</li>
    <li>title 3</li>
    <div class="divider"></div>
    <li>title 4</li>
    <li>title 5</li>
    <div class="divider"></div>
    <li>title 6</li>
    

    Do this with skipping the first index and modulus 2 :

    <?php 
    foreach($items as $index=>$item) {
      if ($îndex != 0 && $îndex % 2 = 0) {
    ?>
    <?php // <!-- ADD HTML HERE !> ?>
    <li>$item->title</li>
    <?php
      } else {
    ?>
    <li>$item->title</li>
    <?php
      }
    }
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 使用yolov5-7.0目标检测报错
  • ¥15 对于这个问题的解释说明
  • ¥200 询问:python实现大地主题正反算的程序设计,有偿
  • ¥15 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥20 java在应用程序里获取不到扬声器设备