如何在每第四个循环术语后添加

时间:2015-09-26 08:04:46

标签: javascript php jquery html for-loop

我希望在循环中的每第四个数字后断开循环。

我想创建一个包含20个人的列表;每个tr应该是4个人。

所以,我希望在每4个 th 个循环之后断开循环。我的tr将包含4个td,并且每个td值相对于循环递增,就像第一个td将1秒将2和最后将4,然后它应该打破一个新的tr并且值在td中,就像我按增量顺序说的那样。

我的代码如下:

 <?php  for ($i = 0 ; $i<=20; $i++){?>
     <tr>

         <td>
             <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
             <a href="<?php echo $i ; // shoud to be 1 ?>" class="user-link">Full name 1</a>
             <span class="user-subhead">Member</span>
         </td>
          <td>
             <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
             <a href="<?php echo $i ; // shoud to be 2 ?>" class="user-link">Full name 1</a>
             <span class="user-subhead">Member</span>
         </td>

         <td>
             <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
             <a href="<?php echo $i ; // shoud to be 3 ?>" class="user-link">Full name 1</a>
             <span class="user-subhead">Member</span>
         </td>

         <td>
             <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
             <a href="<?php echo $i ; // shoud to be 4 ?>" class="user-link">Full name 1</a>
             <span class="user-subhead">Member</span>
         </td>

      </tr>

 <?php 
if($i%4==0){    echo "<tr></tr>";}


} ?>

5 个答案:

答案 0 :(得分:1)

你可以添加虚拟变量$ temp,然后每次增加值,如果你出现它将再次从1开始。

这是最简单的方法!!

    <?php  
    $temp =1;
    for ($i = 1 ; $i<=23; $i++){ if($temp == 1){   echo "<tr>"; } ?>
        <td>
            <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
            <a href="<?php echo $i ; // shoud to be 1 ?>" class="user-link">Full name <?php echo $i ; ?></a>
            <span class="user-subhead">Member</span>
        </td>
    <?php 
    if($temp == 4){ echo "</tr>"; $temp = 0; }
        $temp++;
    }
  if($temp-1 != 0 ){ echo '</tr>'; }
    ?>

答案 1 :(得分:1)

只是想伸出我的脖子并展示另一种方法。 通常你有一组用户。 这个将创建一个包含4个列的表,如果您有22个用户,则此示例中只显示20个,因为它限制输出以填满每一行。

$td = array();
$userlist = array( 'Bob', 'John', 'Robert', 'Eric', 'Lydia', 'Fanny', 'Alex', 'Leopold', 'Tom', 'Mark', 'Bob2', 'John2', 'Robert2', 'Eric2', 'Lydia2', 'Fanny2', 'Alex2', 'Leopold2', 'Tom2', 'Mark2' );

foreach( $userlist as $i => $user ) {

    if ( $i != 0 && $i%4 == 0 ) {
      $td[] = '<td> ' . implode( '</td><td>', $tdata ) . '</td>';
      $tdata = array();
    }

    $tdata[] = '<img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
                <a href="' . $i . '" class="user-link">Full name ' . $user . '</a>
                <span class="user-subhead">Member</span>'; 

}

echo '<table><tr>' . implode( '</tr><tr>', $td ) . '</tr></table>';

答案 2 :(得分:-1)

<?php  for ($i = 5 ; $i<=20; $i+=4){ ?>
                <tr>

                    <td>
                        <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
                        <a href="<?php echo $i - 4 ; // shoud to be 1 ?>" class="user-link">Full name 1</a>
                        <span class="user-subhead">Member</span>
                    </td>
                    <td>
                        <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
                        <a href="<?php echo $i - 3; // shoud to be 2 ?>" class="user-link">Full name 1</a>
                        <span class="user-subhead">Member</span>
                    </td>

                    <td>
                        <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
                        <a href="<?php echo $i - 2; // shoud to be 3 ?>" class="user-link">Full name 1</a>
                        <span class="user-subhead">Member</span>
                    </td>

                    <td>
                        <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
                        <a href="<?php echo $i - 1; // shoud to be 4 ?>" class="user-link">Full name 1</a>
                        <span class="user-subhead">Member</span>
                    </td>

                </tr>

<?php } ?>

答案 3 :(得分:-1)

if($i%4==0){ echo "<tr></tr>";}更改为if(($i+1)%4==0){ echo "</tr><tr>";}

答案 4 :(得分:-1)

assume $rows = 20;

<?php  for ($i = 0 ; $i<=$rows; $i++){?>
    <tr>
        <?php if ($i<$rows){ 

        ?>
        <td>
            <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
            <a href="<?php echo $i ; // shoud to be 1 ?>" class="user-link"><?php echo $rows[$i]['nickname']?></a>
            <span class="user-subhead">Member</span>
        </td>
        <?php } ?>
            <?php   $i = $i+1;

             if ($i<$rows){ ?>
        <td>
            <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
            <a href="<?php echo $i ; // shoud to be 1 ?>" class="user-link"><?php echo $rows[$i]['nickname']?></a>
            <span class="user-subhead">Member</span>
        </td>
        <?php } ?>
            <?php
            $i = $i+1;

             if ($i<$rows){ ?>
        <td>
            <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
            <a href="<?php echo $i ; // shoud to be 1 ?>" class="user-link"><?php echo $rows[$i]['nickname']?></a>
            <span class="user-subhead">Member</span>
        </td>
        <?php } ?>
            <?php
            $i = $i+1;
             if ($i<$rows){ ?>
        <td>
            <img src="http://bootdey.com/img/Content/user_1.jpg" alt="">
            <a href="<?php echo $i ; // shoud to be 1 ?>" class="user-link"><?php echo $rows[$i]['nickname']?></a>
            <span class="user-subhead">Member</span>
        </td>
        <?php } ?>

     </tr>

<?php 
if(($i+1)%4==0){ echo "</tr><tr>";}

} ?>