我有一个for循环,最多运行50次。在我的codeigniter视图中,我有
Year Id
2015 1000001
2015 1000002
我使用以下命令获取数据库值
$data['get_data']=$this->get_data_model->getSeating();
我想在视图中将数据库值设置为sno,year,id。但我的数据库只有2列。
<?php $i=1; if(@$get_data)
{
foreach($get_data as $row):
?>
<tr>
<td align="center" height="35"><?=$i?></td>
<td align="left"><?=$row->year?></td>
<td align="left"><?=$row->id?></td>
</tr>
<?php
$i++;
endforeach;
}
这将只显示2行。因为我的数据库只有两个值。但即使数据不在数据库中,我也需要分配50行 例如,在我的例子中,我想在我的视图中显示
通常它会显示如下
Sno Year ID
1 2015 100001
2 2015 100002
但我希望像这样展示
Sno Year ID
1 2015 100001
2 2015 100002
3
4
5
......
50
答案 0 :(得分:1)
这是基本的想法(如果你愿意的话,你可以将它们放在一个循环中):
<?php
$i=1;
if(@$get_data) {
foreach($get_data as $row):
?>
<tr>
<td align="center" height="35"><?=$i?></td>
<td align="left"><?=$row->year?></td>
<td align="left"><?=$row->id?></td>
</tr>
<?php
$i++;
endforeach;
}
for($j=$i; $j<51;$j++):
?>
<tr>
<td align="center" height="35"><?=$j?></td>
<td align="left"></td>
<td align="left"></td>
</tr>
<?php
endfor;
}
?>
答案 1 :(得分:0)
这样怎么样:
<?php for($x=1; $x<51; $x++){?>
<tr>
<td align="center" height="35"><?=$x?></td>
<td align="left"><?=$get_data[$x]->year?></td>
<td align="left"><?=$get_data[$x]->id?></td>
</tr><?php } ?>
答案 2 :(得分:0)
您应该使用for来代替使用foreach循环。 像这样:
<?php
for(i=0;i <= 50;i++){
?>
<tr>
<td align="center" height="35"><?=$i?></td>
<td align="left"><?=$row[$i]->year?></td>
<td align="left"><?=$row[$i]->id?></td>
</tr>
<?php
}
?>
此外,您应该检查$ i是否为$ row的有效索引:
isset($row[$i]) ? <td align="left"><?=$row[$i]->year?></td> : '';