Php mysqli的结果是空或零,然后回显0


Php mysqli result is null or zero then echo 0

我试图写一个PHP,如果一个mysqli查询返回一个值小于1或一个空结果显示为一个表中的0。

我的问题是你写这个作为mysqli查询的一部分,还是作为一个基于查询结果的if语句?

到目前为止,我有:

下面的Mysqli查询(我有一个DB连接和下面的查询工作)

$result = mysqli_query($db, "SELECT SUM(Column_NameA) as total FROM table_name WHERE Column_NameB = '".$_SESSION["username"]."'");
$row = mysqli_fetch_assoc($result);
$sum = $row['total'];

在我的HTML表中,我插入了以下内容,但无法锻炼如何显示0,如果查询没有找到任何数据(即空结果):

<?php if ($sum === 0) {echo '0';} elseif ($sum > 0) {echo $sum;} ?>

一个简写的if statemen t将做:)

echo $sum > 0 || $sum!==null ? $sum : "0";

您可以在数据库内部的total列上附加一个默认值(作为0),然后简单地输出它,或者在三元if表达式中使用empty()函数。

echo (!empty($sum)) ? $sum : 0;