PHP:检查属性是否不存在或其值是否为空字符串

时间:2016-02-25 17:29:54

标签: php isset

这可能是有问题的,但我找不到我想要的确切答案。

在javascript中,我可以简单地执行

if (a.b) {//do something}

但在PHP中,如果我这样做

if($a->b) {}

基本上它会起作用,但如果a没有b我会收到通知,所以我切换到

if(isset($a->b)){}

这不起作用,因为当a->b为空字符串时,它将返回true。所以我最终做了

if(isset($a->b) && $a->b !== ''){}

这似乎是多余的,而且不是很容易出错。

这样做的最佳做法是什么?

1 个答案:

答案 0 :(得分:1)

empty检查是否设置了变量,并包含数据。如果它为空或未设置,则返回true。

if(!empty($a->b)) {}