Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.www.php > #22359
| From | Alessandro Pellizzari <shuriken@amiran.it> |
|---|---|
| Newsgroups | it.comp.www.php |
| Subject | Re: estrarre proprieta dinamiche (non dichiarate) da una classe |
| Date | 2018-11-24 09:05 +0000 |
| Message-ID | <g5siidFlg5vU1@mid.individual.net> (permalink) |
| References | <pt8haf$to9$1@gioia.aioe.org> |
On 23/11/2018 09:29, alex wrote:
> $ cat test.php
> <?php
> class Abc {
> public $a;
> public $b;
> }
>
> $c = new Abc;
> $c->a = 1;
> $c->b = 2;
> $c->c = 3;// non dichiarata (assegnazione dinamica)
>
> $refl = new ReflectionClass($c);
> Come vedete la proprietà *c* non compare perchè non è dichiarata
> esplicitamente (è stata solo assegnata dinamicamente).
> C'è un modo per estrarre le proprietà dinamiche?
ReflectionClass fa la reflection della class, mentre `c` è una proprietà
dell'oggetto, non della classe.
Non credo ci sia un modo per avere le proprietà non dichiarate, ma se
non sbaglio foreach ti permette di ottenere tutte le proprietà, quindi
ti basta mettere il risultato di getProperties in un array, costruirne
un altro con foreach e fare la differenza (o usare array_filter)
Bye.
Back to it.comp.www.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
estrarre proprieta dinamiche (non dichiarate) da una classe alex <1j9448a02@lnx159sneakemail.com.invalid> - 2018-11-23 10:29 +0100
Re: estrarre proprieta dinamiche (non dichiarate) da una classe Alessandro Pellizzari <shuriken@amiran.it> - 2018-11-24 09:05 +0000
Re: estrarre proprieta dinamiche (non dichiarate) da una classe alex <1j9448a02@lnx159sneakemail.com.invalid> - 2018-11-24 12:58 +0100
csiph-web