如何在php中以降序显示表行的序列号?

时间:2019-04-28 18:35:23

标签: php while-loop counter

我正在寻找一种方法,以降序对表格的序列号进行排序。我在这里使用一个简单的while循环,其中包含一个计数器变量。

代码示例:

       $i= 0;
       while(condition)
       {
           $i++; 
         echo "<td>".$i."</td>";
       }

输出:

Screen shot showing output of while loop

我在这里不使用自动增量列。我只想要一个简单的计数器,但是要以降序排列。

示例:

#
10
9
8
7
6
5
4
3
2
1

我们非常感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

先计数,然后按相反顺序循环

   $i= 0;
   while(condition)
   {
       $i++; 

   }
   for ( cnt= $i, $i>= 0, $i--){
         echo "<td>".$cnt."</td>";
   }

答案 1 :(得分:1)

如果您已经有循环输出1-10版本,则可以简单地将输出更改为显示11减去当前计数...

echo "<td>".(11-$i)."</td>";

或者要更改整个代码,您可以从11开始,然后每次递减计数器并以这种方式输出

$i= 11;
while($i>0)
{
    $i--;
    echo "<td>".$i."</td>";
}

答案 2 :(得分:0)

如果您是从MYSQL数据库中获取的,并且正在使用PDO连接到数据库

//COUNT THE TOTAL NUMBER OF ROWS RETURNED
$sql = "SELECT COUNT(*) FROM all_tnxs ORDER BY id DESC";
$stmt = $con->query($sql);
$stmt_num_rows = $stmt->fetch();
$tot_rows = array_shift($stmt_num_rows);
$sn = $tot_rows

while(){
 $sn--;
 echo '<td>' . $sn . '</td>';
}

因此,无论您拥有多少行总数-从数据库中获取数据,都会使用while循环将其倒数到'0'。 我一直在寻找它,但是后来我自己弄清楚了,所以我决定将它放到这里,对任何可能对您有帮助的人...