get_object_vars
Возвращает доступные свойства объекта в виде массива.
Синтаксис
get_object_vars(object $object): arrayПараметры
| Параметр | Тип | Описание |
|---|---|---|
| $object | object | Объект. |
Возвращаемое значение
arrayМассив «имя свойства — значение».
Примеры
Снаружи видны только открытые свойства:
<?php
class User
{
public string $name = 'Anna';
private string $password = 'secret';
public function all(): array
{
return get_object_vars($this);
}
}
$user = new User();
echo json_encode(get_object_vars($user)), "\n";
echo json_encode($user->all());Результат:
{"name":"Anna"}
{"name":"Anna","password":"secret"}Примечания
Результат зависит от места вызова: внутри класса функция возвращает и закрытые свойства.
См. также
- property_exists — Проверяет, есть ли у класса или объекта свойство.
- get_class_methods — Возвращает имена методов класса.
- json_encode — Преобразует значение в строку JSON.
Вопросы и ответы по теме
В учебнике
- Классы и объекты — Что такое класс и объект в PHP, как описывать свойства и методы и создавать объекты.