Функцыя property_exists

Функцыя property_exists правярае, ці існуе паказаная ўласцівасць у зададзеным аб'екце або класе. Першым параметрам функцыя прымае аб'ект або імя класа, а другім - імя правяраемай уласцівасці. Функцыя вяртае true, калі ўласцівасць існуе, і false у адваротным выпадку.

Сінтаксіс

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

Прыклад

Праверым існаванне ўласцівасці ў аб'екце:

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

Вынік выканання кода:

phptrue

Прыклад

Праверым існаванне неіснуючай уласцівасці:

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

Вынік выканання кода:

phpfalse

Прыклад

Праверым існаванне ўласцівасці ў класе (без стварэння аб'екта):

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

Вынік выканання кода:

phptrue

Прыклад

Праверым існаванне protected уласцівасці:

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

Вынік выканання кода:

phptrue

Глядзіце таксама

  • функцыю method_exists,
    якая правярае існаванне метаду
  • функцыю get_class_vars,
    якая вяртае ўласцівасці класа
  • функцыю get_object_vars,
    якая вяртае ўласцівасці аб'екта