![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 6.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Postaram się nie pokręcić czegoś,więc będę pisał powolij.
Ze Smarty jestem już całkiem nieźle obyty, tylko że dotychczas pisałem wszystko proceduralnie. Niedawno zacząłem się zaznajamiać z OOP i na razie nie mam z samymi klasami problemu. Więc o co mi chodzi? Mianowicie, dotychczas jeśli chciałem wyświetlić newsa i komentarze do niego to robiłem tak (kod oczywiście przykładowy):
Może nie jest to modelowe rozwiązanie ale się do niego przyzwyczaiłem. Dzięki temu mogę sobie wstawiać funkcje za pomocą Smarty do html'a gdzie chcę. I teraz nadchodzi problem/właściwe zagadnienie. Narazie nie udało mi się rozgryźć podobnego rozwiązania jeśli idzie o wykożystanie klas. Pierwsze moje rozwiązanie wyglądało tak;
Oczywiście rozwiązanie nie jest zbyt fortunne bo nie poto tworzy się klasy żeby do każdą metodę odpowiedzialną za wyświetlanie czegoś pakować do funkcji. Drugie rozwiązanie też raczej złe :
Tutaj teoretycznie to rozwiązanie mimo wad (rozwalenie indexu na dwie polowy) dalo by radę tylko w polowie. Bo gdybym chcial osadzić obydwie metody w osobnych divach tak jak w pierwszym przykładzie musiałbym nieziemsko kombinować w szablonach. Ale przeciez nie o to chodzi. No i tutaj moja proźba, gyby ktoś mógł wskazać mi drogę która pewnie jest dość oczywista i prosta ale sam jakoś tego nie mogę wykombinować. elo rap (IMG:http://forum.php.pl/style_emoticons/default/guitar.gif) (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Ten post edytował Maslav 20.02.2006, 03:41:39 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 124 Pomógł: 0 Dołączył: 26.10.2004 Skąd: Rybnik Ostrzeżenie: (0%) ![]() ![]() |
zgodnie z Manualem SMARTY
Kod The php-function callback impl can be either 1. a string containing the function name 2. an array of the form array(&$object, $method) with &$object being a reference to an object and $method being a string containing the method-name 3. an array of the form array(&$class, $method) with $class being a classname and $method being a class method of that class. Czyli po Polskiemu:
W ten sposób powinno to działać bez zarzutu.... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 20:24 |