如果第一个结果为空,我无法让我的 PHP 脚本回显第二个 else 语句。
我的脚本目前的工作方式是“打印地址(来自另一个数组)> 列出评论”,但是即使地址的评论为空,也将打印评论或什么都不打印,我无法让脚本回显这个词“没有意见”。
if(!empty($row['id']))
{
echo "$row[comment]<br/>";
}
else
{
echo "no comment<br/>";
}
感谢任何帮助。谢谢。
最佳答案
假设这来自数据库并且每一行都有一个 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 />";
}
}
}
或者:
$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 />';
关于php - 防止 PHP 打印空数组结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8706109/