如果第一个结果为空,我无法让我的PHP脚本回显第二个else语句。
我的脚本目前的工作方式是“打印地址(来自另一个数组)>列表注释”,但是即使注释为空,地址也会打印注释或者没有,我不能让脚本回显“无评论”。
if(!empty($row['id']))
{
echo "$row[comment]<br/>";
}
else
{
echo "no comment<br/>";
}
任何帮助表示赞赏。感谢。
答案 0 :(得分:4)
假设这来自一个数据库并且每一行都有一个id
,这将始终为真:
if(!empty($row['id']))
尝试:
if(!empty($row['comment']))
如果id
是其他内容,则适用相同的逻辑:检查您打算打印的值:
if (!empty($row['id']) && !empty($row['comment']))
{
echo $row['comment'].'<br/>';
}
else
{
echo "no comment<br/>";
}
编辑:如果此代码循环浏览附加到帖子或其他内容的所有评论,那么如果没有评论循环,则永远不会有任何输出。在这种情况下尝试这样的事情:
if (count($comments) === 0)
{
echo "no comments<br />";
}
else
{
foreach ($comments as $row)
{
if (!empty($row['comment']))
{
echo $row['comment'].'<br />';
}
else
{
echo "no comment<br />";
}
}
}
OR:
$comment_count = 0;
foreach ($comments as $row)
{
if (!empty($row['comment']))
{
echo $row['comment'].'<br />';
$comment_count++; // We have at least one comment
}
else
{
echo "no comment<br />";
}
}
if ($comment_count === 0) echo 'no comments<br />';