Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 26.09.2004 Skąd: Białystok Ostrzeżenie: (0%)
|
Witam!
Czy ktoś z Was wie jak odczytać nazwy pól obiektu, jeśli były one ustawiane metodą __set?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Zależy mi na takim oto rozwiązaniu: Mam klasę View(). Dla obiektu tej klasy w kontrolerze ustawiam różne dane. Ponieważ może być ich zmienna liczba, dlatego nie chcę towrzyć stałych pól np $model1, $model2, zamiast tego używam metody __set do ich ustawiania. Teraz w metodzie show() chcę odczytać nazwy tych pól i przypisać je do szablonu Smarty. Próbowałem to zrobić funkcją get_class_vars(get_class($this)) ale okazało się, że odczytuje ona tylko pola predefiniowane wcześniej w klasie. Pól ustawionych za pomocą __set nie widzi (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Jeśli ktoś ma jakiś pomysł będę wdzięcny. Oto kod:
A oto przykład użycia w kontrolerze:
Myslę, że sprawa jest warta zachodu, bo czy przypiszemy jedną listę czy 15, klasa HTMLView za nas robiłaby całe przypisanie do Smarty. Poza tym kod jest zupełnie niezależny od danych pobranych z modelu. Ten post edytował jafet 20.04.2006, 22:49:26 |
|
|
|
jafet jak odczytać automatycznie nazwy pól obiektu? 20.04.2006, 22:33:09
LBO Hmmm, skoro nie działa poprzez domyślne funkcje to... 20.04.2006, 23:20:54
mike_mech Może tak:
[PHP] pobierz, plaintext <?php a... 20.04.2006, 23:22:13
jafet Dzięki wielkie za sugestie Wasze. Poszedłem tym wł... 21.04.2006, 12:30:15
LBO HA! Miałem rację, poprzez iterację są widoczne... 21.04.2006, 13:04:45
060156 Tutaj masz przyklad:
[PHP] pobierz, plaintext ... 22.04.2006, 23:55:12
LBO To zadziała dokładnie tak samo jak:
[PHP] pobierz,... 23.04.2006, 00:19:18 ![]() ![]() |
|
Aktualny czas: 24.12.2025 - 09:45 |