Wie überprüfen Sie die Existenz einer Eigenschaft in PHP-Objekten und -Klassen?

DDD
Freigeben: 2024-10-29 21:22:02
Original
975 Leute haben es durchsucht

 How do you verify the existence of a property in PHP objects and classes?

Überprüfung der Existenz von Eigenschaften in PHP-Objekten und -Klassen

PHP unterstützt nativ keine reine Objektvariablenprüfung. In dieser Frage werden Methoden untersucht, um festzustellen, ob eine Eigenschaft innerhalb eines PHP-Objekts oder einer PHP-Klasse vorhanden ist.

Property_exists()-Funktion

Die property_exists()-Funktion akzeptiert zwei Parameter: die Klasse Name oder Objektinstanz und der zu überprüfende Eigenschaftsname. Wenn die Eigenschaft im angegebenen Ziel vorhanden ist, gibt die Funktion true zurück, andernfalls false.

Beispiel:

<code class="php">$ob = (object) array('a' => 1, 'b' => 12); 

if (property_exists($ob, 'a')) {
    echo "Property 'a' exists in the object.";
}</code>
Nach dem Login kopieren

Isset()-Funktion

Die Funktion isset() kann auch verwendet werden, um das Vorhandensein einer Eigenschaft zu überprüfen. Beachten Sie jedoch, dass „false“ zurückgegeben wird, wenn die Eigenschaft explizit auf null gesetzt ist.

Beispiel:

<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>
Nach dem Login kopieren

Unterschied zwischen property_exists() und isset()

property_exists() prüft die Existenz einer deklarierten Eigenschaft, unabhängig von ihrem Wert. isset() prüft, ob die Eigenschaft vorhanden ist und ob der Wert nicht null ist.

Beispiel zur Veranschaulichung des Unterschieds:

<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>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie überprüfen Sie die Existenz einer Eigenschaft in PHP-Objekten und -Klassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!