Funzione property_exists

La funzione property_exists verifica se la proprietà specificata esiste nell'oggetto o classe dato. Il primo parametro della funzione accetta un oggetto o il nome di una classe, e il secondo - il nome della proprietà da verificare. La funzione restituisce true se la proprietà esiste, e false in caso contrario.

Sintassi

phpproperty_exists(object|string $object_or_class, string $property): bool

Esempio

Verifichiamo l'esistenza di una proprietà in un oggetto:

php<?php
  class MyClass {
    public $prop1 = 'value';
  }
  
  $obj = new MyClass();
  $res = property_exists($obj, 'prop1');
  var_dump($res);
?>

Risultato dell'esecuzione del codice:

phptrue

Esempio

Verifichiamo l'esistenza di una proprietà inesistente:

php<?php
  class MyClass {
    public $prop1 = 'value';
  }
  
  $obj = new MyClass();
  $res = property_exists($obj, 'prop2');
  var_dump($res);
?>

Risultato dell'esecuzione del codice:

phpfalse

Esempio

Verifichiamo l'esistenza di una proprietà in una classe (senza creare un oggetto):

php<?php
  class MyClass {
    public $prop1 = 'value';
  }
  
  $res = property_exists('MyClass', 'prop1');
  var_dump($res);
?>

Risultato dell'esecuzione del codice:

phptrue

Esempio

Verifichiamo l'esistenza di una proprietà protected:

php<?php
  class MyClass {
    protected $prop1 = 'value';
  }
  
  $obj = new MyClass();
  $res = property_exists($obj, 'prop1');
  var_dump($res);
?>

Risultato dell'esecuzione del codice:

phptrue

Vedi anche

  • la funzione method_exists,
    che verifica l'esistenza di un metodo
  • la funzione get_class_vars,
    che restituisce le proprietà di una classe
  • la funzione get_object_vars,
    che restituisce le proprietà di un oggetto