检查 PHP 中是否存在某个属性
Rana Hasnain Khan
2023年1月30日
2022年5月13日
PHP 为我们提供了两个简单的解决方案,我们可以使用它们来检查对象中是否存在特定属性,然后执行特定的代码。
本文将介绍这两种方法来检查 PHP 中的对象或类中是否存在属性。
使用 property_exists()
检查 PHP 中是否存在属性
property_exists()
方法检查对象或类是否具有属性。它有两个参数,对象和属性。
让我们通过一个例子来检查一个特定的属性是否存在。所以让我们创建一个具有两个属性的对象,如下所示。
# php
$obj = (object) array('a' => 1, 'b' => 2);
现在,让我们检查一下这个对象中是否存在属性 c
,如下所示。
# php
$obj = (object) array('a' => 1, 'b' => 2);
if(property_exists($obj, 'c')){
echo "Property C Exists";
}
if(property_exists($obj, 'b')){
echo "Property B Exists";
}
输出:
上面的例子中存在属性 b
,我们得到了上面的结果。
使用 isset()
检查 PHP 中是否存在属性
PHP 中的 isset()
函数检查是否设置了变量或变量是否存在。我们可以使用 isset()
函数来检查对象是否声明了特定的属性。
该函数与 property_exists()
略有不同,因为它返回 true 或 false。
让我们用我们实现 property_exists()
的相同场景来实现 isset()
函数。
# php
if(isset($obj->c)){
echo "Property C Exists";
}
if(isset($obj->b)){
echo "Property B Exists";
}
输出:
如你所见,它返回的结果与 property_exists()
函数相同。
结论
因此,在本教程中,我们了解了 PHP 中的两个内置函数,它们可用于检查对象属性是否存在,如果存在则执行某段代码。我们还了解了 isset()
和 property_exists()
函数之间的区别。
Author: Rana Hasnain Khan
Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.
LinkedIn