Функции Класса/Объекта
IX. Функции класса/объекта
Введение
Эти функции позволяют получать информацию о классах и инстанциировать (создавать экземпляры) объекты. Вы можете получить имя класса, к которому принадлежит объект, а также свойства и методы члена класса. Используя эти функции, вы можете определить не только членство объекта в классе, но и наследование (т.е. - какой класс расширяется классом объекта).
Примеры
В первом примере мы сначала определяем базовый класс и расширение этого класса. Базовый класс описывает овощ/vegetable в целом: съедобен ли он и какого цвета. Подкласс Spinach добавляет метод для приготовления его и метод для определения, готов ли он.
Затем мы инстанциируем 2 объекта этих классов и печатаем информацию о них, включая их иерархию классов. Мы также определяем некоторые вспомогательные функции, в основном для нормальной печати переменных.
Пример 2. test_script.php
|
В этом примере важно отметить, что объект $leafy является экземпляром класса Spinach, который является подклассом от Vegetable, следовательно, последняя часть вышеприведённого скрипта выведет:
[...] Parentage: Object leafy does not belong to a subclass of Spinach Object leafy belongs to class spinach a subclass of Vegetable |
- Содержание
- call_user_method_array - вызывает пользовательский метод, заданный с массивом параметров [не рекомендуется применять]
- call_user_method - вызывает пользовательский метод в специфическом объекте [не рекомендуется применять]
- class_exists - проверяет, определён ли данный класс
- get_class_methods — возвращает массив имён методов класса
- get_class_vars — возвращает массив свойств по умолчанию данного класса
- get_class — возвращает имя класса объекта
- get_declared_classes — возвращает массив с именем определённого класса
- get_object_vars — возвращает ассоциативный массив свойств объекта
- get_parent_class - запрашивает имя родительского класса для объекта или класса
- is_a — возвращает TRUE, если это объект данного класса или если он имеет этот класс как один из его родительских классов
- is_subclass_of — возвращает TRUE, если данный объект имеет этот класс как один из его родительских классов
- method_exists - проверяет, существует ли метод класса