我有一个表单,其中一些字段是可选的。稍后将显示这些字段。
只有当数据库中存在值时,我才会尝试显示该值。否则,什么也不显示。
如果有值,则需要显示以下内容-
<div class='category' style='font-size:20px; background-color:f2f2f2'>".$row['project_category']."</div>
我应该使用"if(strlen($prjcat)>0)"吗?
谢谢!
您正在寻找一个if
语句来检查值是否为空:
if(!empty($row['project_category'])){
echo "<div class='category' style='font-size:20px; background-color:f2f2f2'>".$row['project_category']."</div>";
}
PHP有您想要的函数~empty()
。。。
<?php if (!empty($row['project_category'])) : ?>
<div class="category" style="font-size:20px; background-color:f2f2f2;">
<?= htmlspecialchars($row['project_category']) ?>
</div>
<?php endif ?>
或者,如果你在一些字段名上循环
<?php foreach ($fields as $field) : ?>
<?php if (!empty($row[$field])) : ?>
<div class="category" style="font-size:20px; background-color:f2f2f2;">
<?= htmlspecialchars($row[$field]) ?>
</div>
<?php endif ?>
<?php endforeach ?>
最好使用这个
<?php if(trim($row['project_category']) != "") { ?>
<div class="category" style="font-size:20px; background-color:f2f2f2"> <?php echo $row['project_category']; ?></div>
<?php } ?>
如果列值可以为零,则不要使用空。因为当您使用empty($row['project_category'])
和$row['project_category'] = 0
时,它将返回true。有关更多信息,请查看此处
您可以尝试不为空:
if(!empty($row['project_category'])){
echo '<div class="category" style="font-size:20px; background-color:f2f2f2">'.$row['project_category'].'</div>';
}