Tidak seperti JavaScript, PHP sememangnya tidak mempunyai pembolehubah objek tulen. Walau bagaimanapun, memastikan sama ada sifat wujud dalam objek atau kelas adalah mungkin menggunakan pelbagai pendekatan.
Fungsi property_exists() membenarkan eksplisit pemeriksaan ke atas kewujudan harta. Sintaksnya ialah:
if (property_exists($ob, 'a'))
di mana $ob ialah objek atau contoh kelas.
Sebagai alternatif, isset() boleh mengesahkan sama ada sesuatu sifat ditetapkan dalam objek. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa isset() mengembalikan palsu jika nilai harta itu adalah batal.
if (isset($ob->a))
Berikut ialah contoh yang menunjukkan perbezaan:
<code class="php">$ob->a = null; var_dump(isset($ob->a)); // false</code>
Walaupun sifat wujud, isset() mengembalikan palsu kerana nilai nol.
<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>
Dalam senario ini, property_exists() mengembalikan benar kerana harta itu ditakrifkan, manakala isset() mengembalikan false kerana nilainya adalah batal.
Atas ialah kandungan terperinci Bagaimana untuk menyemak sama ada Harta Wujud dalam Objek PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!