Heim  >  Artikel  >  Backend-Entwicklung  >  Wie überprüfe ich das Vorhandensein von Objekt- oder Klasseneigenschaften in PHP?

Wie überprüfe ich das Vorhandensein von Objekt- oder Klasseneigenschaften in PHP?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-28 13:59:30491Durchsuche

How to Check for Object or Class Property Existence in PHP?

PHP: Prüfung auf Vorhandensein von Objekt- oder Klasseneigenschaften

In PHP führt der Zugriff auf eine undefinierte Eigenschaft eines Objekts oder einer Klasse zu einem schwerwiegenden Fehler . Es kann jedoch erforderlich sein, vor der Verwendung festzustellen, ob eine Eigenschaft vorhanden ist.

Objekteigenschaftsprüfung:

Um zu überprüfen, ob eine Eigenschaft in einem Objekt vorhanden ist, bietet PHP die Funktion property_exists:

<code class="php">if (property_exists($ob, 'a')) {
  // Property 'a' exists in the object
}</code>

Klasseneigenschaftsprüfung:

Sie können auch mit property_exists nach Eigenschaften in einer Klasse suchen:

<code class="php">if (property_exists('SomeClass', 'property')) {
  // Property 'property' exists in the class
}</code>

Alternative mit isset():

Eine andere Option ist die Verwendung von isset() für die Eigenschaft des Objekts:

<code class="php">if (isset($ob->a)) {
  // Property 'a' exists in the object (but not necessarily set)
}</code>

Beachten Sie jedoch, dass isset() false zurückgibt wenn die Eigenschaft explizit auf null gesetzt ist.

Beispiel mit null-Eigenschaft:

<code class="php">$ob->a = null;
var_dump(isset($ob->a)); // false
var_dump(property_exists($ob, 'a')); // true</code>

Das obige ist der detaillierte Inhalt vonWie überprüfe ich das Vorhandensein von Objekt- oder Klasseneigenschaften in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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