php foreach创建html表自动生成tr标记?
朋友们好,我想在一个tr中显示两个td标签。 这是写入foreach循环的 这是我的密码php foreach创建html表自动生成tr标记?,php,html,Php,Html,朋友们好,我想在一个tr中显示两个td标签。 这是写入foreach循环的 这是我的密码 $rri=0; foreach ($related as $key => $value) { if($rri % 2 == 0 ){ echo "<tr class='dsfdsf'>"; echo "<td >".$rri."</td>"; echo "</tr>";
$rri=0;
foreach ($related as $key => $value) {
if($rri % 2 == 0 ){
echo "<tr class='dsfdsf'>";
echo "<td >".$rri."</td>";
echo "</tr>";
}else{
echo "<td >".$rri."</td>";
}
$rri++;
}
$rri=0;
foreach($key=>$value){
如果($rri%2==0){
回声“;
回声“$rri.”;
回声“;
}否则{
回声“$rri.”;
}
$rri++;
}
这是我的php代码,它的returnoutput在下面
<table>
<tr class='dsfdsf'>
<td>1</td>
</tr>
<tr>
<td>2</td>
</tr>
<tr class='dsfdsf'>
<td>3</td>
</tr>
<tr>
<td>4</td>
</tr>
<tr class='dsfdsf'>
<td>5</td>
</tr>
</table>
1.
2.
3.
4.
5.
我想这样输出
<table>
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>5</td>
</tr>
</table>
1.
2.
3.
4.
5.
foreachloop添加新的tr标记
我检查了奇数或偶数,但添加了不幸的tr
请帮忙
多谢各位 将
放在if
旁边,并将其设置在else
语句中
echo '<table>';
$rri=0;
foreach ($related as $key => $value) {
if($rri % 2 == 0 ){
echo '<tr class="dsfdsf">';
echo '<td>'.$rri.'</td>';
}else{
echo '<td>'.$rri.'</td>';
echo '</tr>';
}
$rri++;
}
echo'</table>';
echo';
$rri=0;
foreach($key=>$value相关){
如果($rri%2==0){
回声';
回声“.$rri.”;
}否则{
回声“.$rri.”;
回声';
}
$rri++;
}
回声';
希望这将有助于以不同但有效的方式找到您的解决方案:
<?php
$related = array(1,2,3,4,5);
$chunk = 2;
?>
<table>
<?php foreach (array_chunk($related, $chunk) as $row): ?>
<tr>
<?php foreach ($row as $val): ?>
<td><?php echo $val; ?></td>
<?php endforeach; ?>
</tr>
<?php endforeach; ?>
</table>
这应该行得通
$rri=0;
foreach ($related as $key => $value) {
if($rri % 2 == 0 ){
if($rri > 0){
echo "</tr>";
}
echo "<tr class='dsfdsf'>";
}
echo "<td>".$rri."</td>";
$rri++;
}
$rri=0;
foreach($key=>$value){
如果($rri%2==0){
如果($rri>0){
回声“;
}
回声“;
}
回声“$rri.”;
$rri++;
}
您可以试试这个
$rri=1;
echo "<tr class='dsfdsf'>";
foreach ($related as $key => $value) {
echo "<td >".$rri."</td>";
if($rri % 2 == 0 ){
echo "</tr><tr>";
}
$rri++;
}
echo "</tr>";
$rri=1;
回声“;
foreach($key=>$value){
回声“$rri.”;
如果($rri%2==0){
回声“;
}
$rri++;
}
回声“;
for($i=0;$i为什么不使用simple for loop而不是foreach?反正你需要迭代器,所以我想这会更好。另外,如果你从0开始迭代,请尝试%2==1。因为0%0=0:)这会导致无效的HTMLHY@弗洛伦特,但现在不是这样。它是?什么样的无效结果PeeHaa??我没有看到$related
$key
或$value begin在循环中的任何位置使用,因此为什么不使用直线
作为`循环并按++2
递增?@DevlshOne,因为renishkhunt只是询问如何修复它。。也许她/他在真正的代码中使用了foreach,但在本示例中没有使用foreach,以便更容易解释。。。。。因此,把它放在一个循环中是不相关的…@PeeHaa为什么它会导致无效的html?如果你真的想变得有趣,只需回显所有
的列表,然后每隔两个循环使用.wrapAll
。
for ($i = 0; $i <= $rri; $i+=2) {
echo "<tr class='dsfdsf'>\n";
echo "<td>$i</td>\n";
echo "<td>$i+1</td?\n";
echo "</tr>\n";
}
<?php
$related=array('1','2','3','4');
$rri=0;
echo "<table border=1 width=500>";
foreach ($related as $key => $value) {
if($rri % 2 == 0 || $rri==0 ){
echo "<tr class='dsfdsf'>";
}
echo "<td >".$rri."</td>";
if($rri/2 == 0 && $rri!=0 ){
echo "</tr>" ;
}
$rri++;
} echo "</table>";?>