Функция get_object_vars
Функцията get_object_vars връща асоциативен масив,
съдържащ свойствата на подадения обект. В върнатия масив
ключовете ще бъдат имената на свойствата, а стойностите - съответните
стойности на тези свойства. Функцията приема един параметър - обект,
чиито свойства трябва да бъдат получени.
Синтаксис
get_object_vars(object);
Пример
Нека получим свойствата на прост обект:
<?php
class MyClass {
public $a = 1;
public $b = 2;
private $c = 3;
}
$obj = new MyClass();
$res = get_object_vars($obj);
print_r($res);
?>
Резултат от изпълнението на кода:
['a' => 1, 'b' => 2]
Пример
Функцията не връща private и protected свойства:
<?php
class Test {
public $x = 10;
protected $y = 20;
private $z = 30;
}
$test = new Test();
$res = get_object_vars($test);
print_r($res);
?>
Резултат от изпълнението на кода:
['x' => 10]
Пример
Работа с динамични свойства:
<?php
$user = new stdClass();
$user->name = 'John';
$user->age = 25;
$res = get_object_vars($user);
print_r($res);
?>
Резултат от изпълнението на кода:
['name' => 'John', 'age' => 25]
Вижте също
-
функцията get_class_vars,
която връща свойствата на клас -
функцията property_exists,
която проверява дали свойство съществува -
функцията get_defined_vars,
която връща всички променливи