2

如果addition_1在数据库中为空,我想显示“未提供”,如果数据库中不为空,我想显示数据?我已经尝试了几种组合,但看不出我错过了什么。

<?php
if (empty($row[addition_1])) {
    echo "Not Provided";
} 
else {
    echo $row[addition_1];
}
?>
4

3 回答 3

2

尝试在数组键中添加引号,例如更改:

$row[addition_1]

$row['addition_1']
于 2013-02-11T03:28:19.267 回答
1

一种替代方法是将其添加到您的 SQL 中COALESCE

SELECT COALESCE(addition_1, 'Not Provided')...

只是另一种选择。这确实假设数据库中的 addition_1 为 NULL ...

如果它是空白而不是 NULL,那么试试这个:

SELECT COALESCE(NULLIF(addition_1,''), 'Not Provided')...

祝你好运。

于 2013-02-11T03:36:04.623 回答
1

我总是使用组合:

if (isset($row['addition_1']) && trim($row['addition_1']))

请记住,您不能根据文档在 empty() 函数中使用任何函数,这就是我使用它的原因。如果你 100% 确定 add_1 总是 isset,你可以跳过它。

于 2013-02-11T03:36:28.633 回答