![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 426 Pomógł: 32 Dołączył: 24.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Mam takie klasy i natknalem sie na pewien problem, nie wiem jak to rozwiazac chce aby __get w klasie TemplateValue dzialalo na dwa sposoby, jezeli zwracam sie $Template->zmienna = "lalala" to tworzy sie obiekt klasy TemplateValue i zmienna value przybiera wartosc "lalala", jezeli wykonam $Template->zmienna->zmienna2 to __get zwraca mi zmienna $children[$zmienna2]->value jezeli wykonam $Template->zmienna->zmienna2 to dostaje $children[$zmienna2]->value a jak $Template->zmienna->zmienna2->zmienna3 to $children[$zmienna2->children[$zmienna3]]->value, nie wiem czy dobrze wytlumaczylem |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Teraz zrozumiałem o co Tobie chodziło.
Nie da rady tego zrobić, gdyż klasy nie posiadają wiadomości o tym, czy są wywoływane jako obiekty, czy jako wartości. Gdyby istniała metoda typu toValue() (czyli przypisywanie obiektu bez kontekstu , nie tak jak toString()) to jak najbardziej a póki co, działa to prawie tak samo jak tablice. Jeżeli nie będzie to Tobie przeszkadzać, to tutaj masz implementacje w jednej klasie
Ten post edytował LBO 20.08.2008, 18:04:16 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 21:56 |