首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何反转PHP while循环,该循环包含从最后一个长度可变的数字开始的递增数字?

如何反转PHP while循环,该循环包含从最后一个长度可变的数字开始的递增数字?
EN

Stack Overflow用户
提问于 2018-08-15 05:04:36
回答 2查看 1.1K关注 0票数 -1

我有一个工作的php代码,它使一个数字循环从1开始计数。

代码语言:javascript
复制
<?php

$i = 0; // define number

  while (have_rows('the_rows')) : row(); // begin while loop

  $i++; // increase increment with each loop ?>

  <div>
     <?php echo $i; // outputting the number ?>
  </div>

<?php 
    endwhile; // end while loop 
?>

此代码将遍历所有可用条目,并在没有更多条目后停止。它将对每个$i输出进行计数。

例如,它可能如下所示:

代码语言:javascript
复制
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>

没有预先设定的数字。它可以是任何数字,包括1、5、74或938个条目。循环将继续到所有条目,并在所有条目完成后停止。

如果我从一个开始,这很好用。但由于数字不是固定的,向后循环稍微困难一点。

我如何反转这个循环,以便首先,它倒数(例如,如果有7行,它从7开始倒数),并从最后一行开始反转循环?

例如:

代码语言:javascript
复制
<div>7</div>
<div>6</div>
<div>5</div>
<div>4</div>
<div>3</div>
<div>2</div>
<div>1</div>
EN

回答 2

Stack Overflow用户

发布于 2018-08-15 05:13:10

如果您不知道数据的长度,请获取数据的长度,然后反向打印出来。

代码语言:javascript
复制
<?php
  $i = 0;
  while(has_rows('the_rows')):
    row();
    $i++;
  endwhile;

  while($i > 0):
?>

  <div><?php echo $i--; ?></div>

<?php endwhile; ?>
票数 0
EN

Stack Overflow用户

发布于 2018-08-15 05:19:30

如果事先不知道行数,也不需要两次循环,那么您有几个选择。

一种方法是构建一个数组并反转它:

代码语言:javascript
复制
<?php
$i = 0;
while (have_rows('the_rows')) : row();
    $i++;
    $html[] = "
    <div>
     $i
    </div>";
endwhile;
echo implode(array_reverse($html));

或者将每个值添加到一个数组中:

代码语言:javascript
复制
<?php
$i = 0;
while (have_rows('the_rows')) : row();
    $i++;
    $html = "
    <div>
     $i
    </div>";
    array_unshift($data, $html);
endwhile;
echo implode($data);

或者将新字符串添加到现有字符串的前面:

代码语言:javascript
复制
<?php
$i = 0;
$html = "";
while (have_rows('the_rows')) : row();
    $i++;
    $html = "
    <div>
     $i
    </div>$html";
endwhile;
echo $html;

然而,这看起来像WordPress之类的,所以我认为有一种方法可以在循环之前获得行数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51849742

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档