与 JavaScript 不同,PHP 本身并不拥有纯对象变量。但是,可以使用各种方法来确定某个属性是否存在于对象或类中。
property_exists() 函数允许显式检查关于财产的存在。其语法为:
if (property_exists($ob, 'a'))
其中 $ob 是对象或类实例。
或者,isset() 可以验证对象中是否设置了属性。但是,需要注意的是,如果属性值为 null,isset() 将返回 false。
if (isset($ob->a))
下面是一个演示差异的示例:
$ob->a = null;
var_dump(isset($ob->a)); // false
即使该属性存在,isset()也会因空值而返回 false。
class Foo
{
public $bar = null;
}
$foo = new Foo();
var_dump(property_exists($foo, 'bar')); // true
var_dump(isset($foo->bar)); // false
在这种情况下,property_exists() 返回 true,因为属性已定义,而 isset() 返回 false,因为值为 null。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3