如何在PHP读取MySQL数据生成的表格中添加自动递增序号列
解决方法
你现有的外层$items遍历循环已经自带了数组索引变量$i,直接用这个变量输出序号即可,不需要额外嵌套循环。
修改步骤
- 找到你当前序号列的代码:
<td><?php foreach (range(0, 12) as $number) { echo $number; }?></td>
- 替换为以下代码即可实现自动递增序号:
<!-- 序号从1开始计数,要从0开始就去掉+1 --> <td><?php echo $i + 1; ?></td>
说明
$i是你外层循环<?php foreach ($items as $i => $item) : ?> 声明的数组索引,会跟随遍历的条目自动递增,序号总数和你的$items实际条数完全一致,不会有固定输出12条的限制。
修改后对应代码片段
<tbody> <?php foreach ($items as $i => $item) : ?> <tr id="tablelist_item_<?php echo $i; ?>" class="<?php echo $fc_item_classes.' row'.($i%2 ? 1 : 0); ?>" <?php echo $microdata_itemtype_code; ?>> <?php if ( $buttons_exists || $show_title || count($item->css_markups) ) : ?> <!-- 修改后的序号列 --> <td><?php echo $i + 1; ?></td> <td class="fc_title_col"> <?php if ($show_title) : ?> <!-- BOF item title --> <span class="fc_item_title" itemprop="name"> <?php if ($link_titles) : ?> <a href="<?php echo JRoute::_(FlexicontentHelperRoute::getItemRoute($item->slug, $item->categoryslug, 0, $item)); ?>" itemprop="url"><?php echo $item->title; ?></a> <?php else : ?> <?php echo $item->title; ?> <?php endif; ?> </span> <!-- EOF item title --> <?php endif; ?> <div class="fcclear fc_beforemarkups"></div> </td> <?php endif; ?> <!-- BOF item fields --> <?php foreach ($columns as $name => $label) : ?> <td><?php echo isset($item->positions['table']->{$name}->display) ? $item->positions['table']->{$name}->display : ''; ?></td> <?php endforeach; ?> <!-- EOF item fields --> </tr> <?php endforeach; ?> </tbody>
内容的提问来源于stack exchange,提问作者Elaine Byene
相关产品推荐
相关产品推荐

