檢查 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