PHP 物件和類別中的屬性存在驗證
PHP 本身不支援純物件變數檢查。本題探討了確定 PHP 物件或類別中是否存在某個屬性的方法。
Property_exists() 函數
property_exists() 函數接受兩個參數:類別名稱或物件實例以及要檢查的屬性名稱。如果指定目標中存在該屬性,則函數傳回 true,否則傳回 false。
範例:
<code class="php">$ob = (object) array('a' => 1, 'b' => 12); if (property_exists($ob, 'a')) { echo "Property 'a' exists in the object."; }</code>
Isset() 函數
isset() 函數也可用來檢查屬性是否存在。但請注意,如果屬性明確設定為 null,它將傳回 false。
範例:
<code class="php">$ob->a = null; if (isset($ob->a)) { echo "Property 'a' exists in the object, but is set to null."; } else { echo "Property 'a' does not exist in the object."; }</code>
property_exists() 和isset() 之間的差異
property_exists() 檢查聲明的屬性是否存在,無論其值為何。 isset() 檢查屬性是否存在以及值是否不為空。
示範差異的範例:
<code class="php">class Foo { public $bar = null; } $foo = new Foo(); var_dump(property_exists($foo, 'bar')); // true var_dump(isset($foo->bar)); // false</code>
以上是如何驗證 PHP 物件和類別中的屬性是否存在?的詳細內容。更多資訊請關注PHP中文網其他相關文章!