PHP中的while循环问题 [英] While loop problem in PHP

查看:38
本文介绍了PHP中的while循环问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的标记结构如下:

<div>value1</div><div>value2</div><div>value3</div><div>value4</div><div class="clear"></div>

<div><div>value5</div><div>value6</div><div>value7</div><div>value8</div><div class="clear"></div>

我的数据在 PHP 结果集中,假设我有 9 条记录,因此结构应如下所示:

<div>value1</div><div>value2</div><div>value3</div><div>value4</div><div class="clear"></div>

<div><div>value5</div><div>value6</div><div>value7</div><div>value8</div><div class="clear"></div>

<div><div>value9</div><div class="clear"></div>

因此,while 循环应该以某种方式运行,以便在成功打印 4 条记录后打印父 div.但在上面我有 9 条记录,所以如果是最后一条记录,它应该关闭潜水.

请帮忙,谢谢!

解决方案

通过从给定的逻辑中获得一些想法 此处 我尝试了以下操作,它有效.

<!-- 开始主 div --><?php$icount = 1;$ittotal = mysql_num_rows($result_rs);而 ($rs = mysql_fetch_array($result_rs)) {echo '<div>'.$rs['value'].'</div>';if ($icount % 4 == 0 && $icount != $itotal){echo '<div class="clear"></div>';回声'</div>';//关闭主divecho '

';//开始新的主div}$icount++;}?>

<!-- 关闭主 div -->

那个,解决了我的问题.

已添加了全部条件,因此当您每页只有 4 条记录时,这也能正常工作.

I have my markup structure as below:

<div>
    <div>value1</div>
    <div>value2</div>
    <div>value3</div>
    <div>value4</div>

    <div class="clear"></div>
</div>
<div>
    <div>value5</div>
    <div>value6</div>
    <div>value7</div>
    <div>value8</div>

    <div class="clear"></div>
</div>

I have my data in a PHP result set, let's say I have 9 records so the structure should be as below:

<div>
    <div>value1</div>
    <div>value2</div>
    <div>value3</div>
    <div>value4</div>

    <div class="clear"></div>
</div>
<div>
    <div>value5</div>
    <div>value6</div>
    <div>value7</div>
    <div>value8</div>

    <div class="clear"></div>
</div>
<div>
    <div>value9</div>

    <div class="clear"></div>
</div>

So, the while loop should run in a way so that it will print the parent div after 4 records printed successfully. But in above I have 9 records so it should close the dive if its the last record.

Please help, Thanks!

解决方案

By getting some idea from logic given here I tried following and it works.

<div> <!-- started main div -->

<?php 
    $icount = 1;
    $itotal = mysql_num_rows($result_rs);
    while ($rs = mysql_fetch_array($result_rs)) {
        echo '<div>'.$rs['value'].'</div>'; 

        if ($icount % 4 == 0 && $icount != $itotal){
            echo '<div class="clear"></div>';
            echo '</div>'; //closed main div

            echo '<div>'; //started new main div
        }

        $icount++;
    }
?>

</div> <!-- closed main div -->

That, solved my problem.

Edited: added itotal condition, so when you will have only 4 records per page then also this will work properly.

这篇关于PHP中的while循环问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
PHP最新文章
热门教程
热门工具
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆