Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> kozystanie z metot obiektu w innym obiekcie
squid
post
Post #1





Grupa: Zarejestrowani
Postów: 358
Pomógł: 0
Dołączył: 3.07.2003
Skąd: Szczecin->niebuszewo->*(next to window)

Ostrzeżenie: (0%)
-----


mam sobie klase zalozmy:
  1. <?php
  2.  
  3. class nazwa {
  4. var $templateHandler;
  5. ...
  6. mlist ()
  7. {
  8. ...
  9. $templateHandler->smarty->assign( 'music',  $m);
  10. ...
  11. }
  12. }
  13.  
  14. ?>

wszesniej, w skrypcie wywolujacym, przed stworzeniem obiektu tej klasy robie tak:
  1. <?php
  2.  
  3. $smarty = new Smarty;
  4. $a = new nazwa();
  5. $a->templateHandler = &$smarty;
  6.  
  7. ?>


dostaje pikny komunikat
Cytat
Fatal error: Call to a member function on a non-object in D:\htdocs\...\*.php on line <numer lini>


no i co w takim wypadku moge zrobic kiedy chcialbym wywolac metode obiektu smarty w moim obikcie? kidys probowalem przez argument z referencja podac i dzialalo ale takie rozwiazanie jest dla mnie malo wygodne, macie jakies inne propozycje?

Ten post edytował squid 8.01.2005, 20:18:08
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
SongoQ
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


Wydaje mi się ze warto extendowac smarty bo wtedy rozszerzasz możliwości smarty. Dopasowujesz do własnych potrzeb nadpisując pewne funkcje, dodajesz swoje nowe wymagane do określonego projektu.

Napisze jak ja to robię. W każdym projekcie rozszerzam smarty, wszystkie dotychczasowe metody smarty zostają, ale mam wtedy możliwość dodania własnych nie modyfikując kodu smarty. Wtedy każda aktualizacja smarty nie spowoduje żadnych przeróbek w kodzie, a jeśli jest potrzeba dodania czegoś do funkcjonalności smarty, po prostu dodaje plugin i już.

Chętnie poczytam jak to robią inni.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 10:36