数据库:
id | name
1 | aaa
2 | bbb
3 | ccc
.. | ...
250| zz3
foreach ($datafromdb as $value){
echo $value->name();
}
这告诉我:
aaa bbb ccc ... zz3
从左到右
if
<table>
<tr>
foreach ($datafromdb as $value){
echo '<td>' . $value->name() . '</td>';
}
</tr>
</table>
显示:
aaa
bbb
ccc
...
zzz3
我怎样才能制作表12x12?
aaa aaa1 bbb2
bbb aaa2 bbb2
... aaa3 bbb3
... ... ....
zzz zzz2 zzz4
首先从上到下(12x),然后是下一列,再从上到下(12x)等12x
我从左到右,从左到右,从左到右等显示此值,但我想从上到下,从上到下,从上到下等等
答案 0 :(得分:1)
<table>
$index=0;
foreach ($datafromdb as $value)
{
if($index%12==0) echo '<tr>' ;
echo '<td>' . $value->name() . '</td>';
if($index%12==0) echo '</tr>' ;
}
</table>
答案 1 :(得分:1)
您可以尝试并排创建表格(使用css浮动它们)
$index=0;
foreach ($data as $value)
{
if($index == '12') $index = 0;
if($index == 0) echo '<table style="float:left;">';
echo '<tr>' ;
echo '<td>' . $value . '</td>';
echo '</tr>' ;
if($index==11) echo '</table>' ;
$index ++;
}
答案 2 :(得分:0)
看,我并不完全了解php,但这是我能想到的:
<table>
<tr>
var counter=0;
foreach ($datafromdb as $value){
if (i%12==0) { echo '<td>'; }
echo $value->name()+'<br/>';
if (i%12==0) { echo '</td>'; }
counter++;
}
</tr>
</table>
希望这有帮助!
答案 3 :(得分:0)
<?php
$data = range(1,16);
$maxColumns = 4;
$maxRows = 4;
?>
<table>
<? for($r = 0; $r < $maxRows; $r++) { ?>
<tr>
<? for($c = 0; $c < $maxColumns; $c++) { ?>
<td><? echo $data[($c*$maxColumns)+$r]?></td>
<? }?>
</tr>
<? } ?>
</table>
您可能想要在回显之前检查数据是否确实存在。
答案 4 :(得分:0)
Daniel Cherrington的代码很好,但只有PHP才能做到:
<?php
$data = range(1,240);
$tab = array();
$max = 12;
for($i=0;$i<sizeof($data);$i++){
$tab[($i % $max)][] = $data[$i];
}
echo "<table border='1'>";
foreach($tab as $line){
echo "<tr>";
foreach($line as $row){
echo "<td>".$row."</td>";
}
echo "</tr>";
}
echo "</table>";
?>