obrazowanie, że mam cel i która może zostać wywołana w szablonie gałązka tak:gałązka przekonwertować ciąg do obiektu, który reprezentować
{{ object1.object2.object3.property3A }}
dobrze, to pokaże mi treść jeśli używamy php napisać to:
$object1->getObject2()->getObject3()->getProperty3A();
Moje pytanie brzmi, czy mam ciąg,
$refString="object1.object2.object3.property3A";
a następnie jest on przekazywany do gałązka, jak coul d dostaję właściwość3A? Dla mojego doświadczenia możemy to zrobić w php w ten sposób:
$refString="object1->getObject2()->getObject3()->getProperty3A()";
echo $$refString;
Ale nie wiem jak sprawić, by działało w gałązce.
może być możliwe za pomocą atrybutu: http://twig.sensiolabs.org/doc/functions/attribute.html, ale nie wiesz, jak zachowuje się w przypadku wielu połączeń, takich jak twoje, może być konieczne rozdzielenie kropki, a następnie wywołanie rekursywne. – catchamonkey
tak, próbowałem atrybut, jeśli masz właściwość 1A, to jest łatwe. ale atrybut funkcji nie będzie działał dla mnogiego poziomu. – ferdinandfly
Stąd rekurencja, którą musisz zrobić sam, rozdzieliła sznur na pierwszą kropkę, a jeśli pozostała prawa część ma kropkę, ponownie powróć, w przeciwnym razie zwróć atrybut za pomocą lewej strony kropki, a w ostatniej pętli. – catchamonkey