venerdì 3 maggio 2019

get_object_vars PHP ottenere le proprietà di un oggetto

Tra le cose che prima o poi potrebbe capitare di dover fare, c'è anche la necessità di ottenere le proprietà di un oggetto specifico in php.
Che sia una classe o un oggetto di qualsiasi altro tipo, il php mette a disposizione una funzione in grado di ricavare le proprietà degli oggetti.
Vediamo subito come.


get_object_vars PHP


Come si può ben capire dal titolo di questo articolo, la funzionalità php in questione è la get_object_vars.

Vediamo subito di capire come funziona questa funzionalità con un semplice esempio:

<?php
class prova
{
    private $a=4;
    public $b=1;
    public $c="x";
    private $d="y";
}
$classe=new prova;
print_r(get_object_vars($classe));
?>


Il risultato ricavato da questo semplice script, stampato a video sarà:

Array ( [b] => 1 [c] => x )

Grazie a get_object_vars infatti, abbinata alla funzione print_r, sarà possibile stampare a video tutte le variabili pubbliche presenti nella classe prova, comprese di nome variabile e valore.
Ad un osservatore attento poi, non sarà comunque sfuggito il fatto che le variabili stampate a video nell'esempio citato, sono la b e la c, questo perchè appunto, get_object_vars può mostrare solo le proprietà pubbliche degli oggetti, e quindi le varibile private a e d non sono riportate a video.

Tutto molto semplice no?
Con questa funzionalità php si possono dunque ricavare tutte le variabili pubbliche contenute in una classe php.

Piaciuto l'articolo? Lascia un commento!

EmoticonEmoticon