get_object_vars
funkcja
Zwraca tablicę właściwości obiektu dostępnych w bieżącym kontekście. Wywołana z zewnątrz klasy zwraca tylko właściwości publiczne.
get_object_vars(object $object): array
get_object_vars zwraca tablicę asocjacyjną ['nazwa' => wartość] dla właściwości obiektu widocznych w miejscu wywołania. Gdy wywołujesz ją poza klasą, dostaniesz tylko właściwości public. Gdy wywołujesz ją wewnątrz metody klasy (np. w __toString), dostaniesz też protected i private. Właściwości niezainicjalizowane (zadeklarowane, ale bez wartości) są pomijane. Funkcja jest przydatna do serializacji obiektów lub ich logowania.
<?php
declare(strict_types=1);
class Ksiazka
{
public string $tytul = 'Lalka';
protected int $rok = 1890;
private string $isbn = '978-83-000-0001-1';
}
$k = new Ksiazka();
// Z zewnątrz — tylko właściwości publiczne:
var_dump(get_object_vars($k));
// array(1) {
// ["tytul"] => string(5) "Lalka"
// }