仅在不为空时显示值-PHP


Show Value Only If Not Empty - PHP

我有一个表单,其中一些字段是可选的。稍后将显示这些字段。

只有当数据库中存在值时,我才会尝试显示该值。否则,什么也不显示。

如果有值,则需要显示以下内容-

<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>';
}