function GetByVotes(){
$db = new Database;
$db->query('SELECT posts.* FROM posts
ORDER BY like_num DESC
LIMIT 10');
$results = $db->resultset();
return $results;
}
<?php foreach(getByVotes() as $votes) :?>
<div class="cerculet1">i</div><div class="celesMai"><a href="#" class="dece"><?php echo $votes->title;?></a></div>
<?php endforeach;?>
现在结果限制为10,如何从i
div动态生成.cerculet1
?
示例:
.cerculet1
与数据库无关,它只是一个应该增加的数字,作为结果增量的数量(从1-10);
答案 0 :(得分:2)
没有人会为你增加$i
,所以你必须自己做:
$i = 1;
foreach(getByVotes() as $votes) :?>
<div class="cerculet1"><?=$i?></div><div class="celesMai"><a href="#" class="dece"><?php echo $votes->title;?></a></div>
<?php
$i++;
endforeach;?>
答案 1 :(得分:2)
查询结果存储在一个数组中,其中键从0开始,每行递增。您只需将+1
添加到该键即可显示。
<?php foreach(getByVotes() as $k=>$votes) :?>
<div class="cerculet1"><?= $k+1 ?></div>
<div class="celesMai"><a href="#" class="dece"><?php echo $votes->title;?></a></div>
<?php endforeach;?>
答案 2 :(得分:0)
如果你的查询是非关联的,你可以试试这个,我认为这是mysql的默认行为。
<?php foreach(getByVotes() as $key => $votes) :?>
<div class="cerculet1"><?php echo $key;?></div><div class="celesMai"><a href="#" class="dece"><?php echo $votes->title;?></a></div>
<?php endforeach;?>