Autor | Zpráva | ||
---|---|---|---|
JanXC Profil * |
#1 · Zasláno: 29. 4. 2015, 09:34:33 · Upravil/a: JanXC
Dobrý den,
mám instanci určité třídy, např: class Foo { /** * Popisek * @MojeAnotace */ protected $a; protected $b; } a potřebuji z instance vytáhnout přes reflexi všechny proměnné (private, protected, public) a jejich dokumentaci. Existuje obdoba pro metody. Pro fieldy existuje funkce get_object_vars, ta ale vrací jen public fieldy a pouze mapu (klíč->hodnota). Mohu poprosit o nějaké nápady? Děkuji, Jan ve výsledku se potřebuji dostat k anotacím... |
||
kzk Profil * |
#2 · Zasláno: 29. 4. 2015, 09:46:42 · Upravil/a: kzk
JanXC:
Můžeš se inspirovat tady a pak si najít volání ve zbytku API. Funguje to skvěle. Nad tím si pak snadno můžeš udělat wrapper pro vlastní non-PHP-doc zápis. kzk: http://api.nette.org/2.3.1/source-Reflection.ClassType.php.html#182 |
||
Joker Profil |
#3 · Zasláno: 29. 4. 2015, 09:50:01
JanXC:
Jestli jsem to dobře pochopil, cílem je dostat se uvnitř skriptu k těm komentářům? Myslel jsem si, že to ani nejde, ale vypadá to, že jde: ReflectionClass::getDocComment. Nebo snad chcete dělat něco jako jsou Data Annotations v .Netu? |
||
JanXC Profil * |
#4 · Zasláno: 29. 4. 2015, 10:13:43
Děkuji za reakce. Jde mi o to, dostat anotace z proměnných (celá třída a metody jsou pro mně zbytečné...).
Našel jsem ReflectionClass::getProperties() , která vrátí objekty ReflectionProperty a to je asi přesně ono, co potřebuji. Snad to bude celé.
Děkuji. |
||
Časová prodleva: 9 let
|
0