В этой статье я объясню функцию get_class_vars() и покажу несколько примеров этой функции для большей ясности.

Введение

PHP — это язык программирования с открытым исходным кодом. Он используется для превращения веб-сайта в динамический веб-сайт. PHP имеет большую библиотеку, содержащую множество встроенных функций.

Функция get_class_vars() в PHP используется для получения свойств по умолчанию данного класса. Он принимает один аргумент, который является именем класса, который вы хотите проверить, и возвращает массив свойств по умолчанию для этого класса.

Пример 1: Использование get_class_vars() для получения свойств класса по умолчанию

class Person {
  public $name;
  public $age;
  protected $gender;

  public function __construct($name, $age, $gender) {
    $this->name = $name;
    $this->age = $age;
    $this->gender = $gender;
  }
}

$person = new Person('John Doe', 30, 'male');
$default_properties = get_class_vars('Person');

print_r($default_properties);

Вывод

В этом примере мы определяем класс Person с тремя свойствами: $name, $age и $gender. Затем мы создаем новый объект Person и используем get_class_vars() для получения свойств по умолчанию для класса Person. Вывод показывает массив свойств по умолчанию с их начальными значениями, установленными на null.

Пример 2: Использование get_class_vars() для получения свойств по умолчанию родительского класса и его дочернего класса

class Person {
  public $name;
  public $age;

  public function __construct($name, $age) {
    $this->name = $name;
    $this->age = $age;
  }
}

class Student extends Person {
  public $id;

  public function __construct($name, $age, $id) {
    parent::__construct($name, $age);
    $this->id = $id;
  }
}

$student = new Student('Jane Doe', 20, 1234);
$default_properties = get_class_vars('Student');

print_r($default_properties);

Вывод

В этом примере мы определяем класс Person с двумя свойствами: $name и $age. Затем мы определяем класс Student, который расширяет класс Person и добавляет свойство $id. Мы создаем новый объект Student и используем get_class_vars() для получения свойств по умолчанию для класса Student. Выходные данные показывают массив свойств по умолчанию для класса Student, который включает только свойство $id, определенное в классе Student, а не свойства, унаследованные от класса Person.