我想知道,如果自定义字段中没有数据,是否有可用于阻止表格行形成的代码。
例如,这是我的表:
<tr>
<td><?php echo $place_1; ?></td>
<td><?php echo $person_1; ?></td>
<td><?php echo $status_1; ?></td>
<td><a href="<?php echo $website_1; ?>"></a></td>
</tr>
<tr>
<td><?php echo $place_2; ?></td>
<td><?php echo $person_2; ?></td>
<td><?php echo $status_2; ?></td>
<td><a href="<?php echo $website_2; ?>"></a></td>
</tr>
<tr>
<td><?php echo $place_3; ?></td>
<td><?php echo $person_3; ?></td>
<td><?php echo $status_3; ?></td>
<td><a href="<?php echo $website_3; ?>"></a></td>
</tr>
我怎样才能说“如果$ place_2为空,则隐藏2和3的所有表格行?”
感谢任何帮助!
答案 0 :(得分:3)
你可以简单地使用PHP只输出非空的行:
...
</tr>
<?php if ($place_2 != "") { ?>
<tr>
<td><?php echo $place_2; ?></td>
<td><?php echo $person_2; ?></td>
<td><?php echo $status_2; ?></td>
<td><a href="<?php echo $website_2; ?>"></a></td>
</tr>
<?php } ?>
<tr>
...
此方法将tr
元素包装在if
块中。还有其他许多方法可以实现相同的结果,这可能会出现在其他答案中。根据您的问题,当$place_3
为空时,您似乎也想要取消$place_2
。在这种情况下,我假设$place_3
为空,因此您可以对tr
元素应用相同的方法,用$place_2
替换$place_3
。
答案 1 :(得分:0)
您也可以使用WHILE循环。这适用于任意数量的行。只需将{4}替换为要在While
条件
<?php
$i=0;
while($i<4)
{
if($place_.$i == "")
break; // if $place_ variable is empty no further rows are printed.
else
{
?>
<tr>
<td><?php echo $place_.$i; ?></td>
<td><?php echo $person_.$i; ?></td>
<td><?php echo $status_.$i; ?></td>
<td><a href="<?php echo $website_.$i; ?>"></a></td>
</tr>
<?php
} // closing bracket of else
$i = $i + 1;
} //end of while loop
?>