Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jak sie pozbyc $this->db->query("bla");
Forum PHP.pl > Forum > PHP
tsufu
Witam.

Moje pytanie dotyczy dostepu do metod w innych klasach. tzn. jesli mam

  1. <?php
  2.  
  3. class klasa{
  4.  
  5.  //mysql_connect instancje itp wczesniej 
  6.  function return_query($query) {
  7.  
  8.  return mysql_query($query);
  9.  
  10.  }
  11. }
  12.  
  13. class pokaz{
  14.  
  15. //singleton niewazne sposob pobrania \"sterownika bazy\" czyli tego wyzej
  16. function pokaz(){ 
  17. $this->db=&klasa::instancja();
  18. }
  19.  
  20. function pokaz_cos(){
  21.  
  22. $this->db->return_query('niewazne');
  23.  
  24. }
  25. }
  26.  
  27. ?>


i moje pytanie wlasnie tutaj ... czy nie mozna w inny sposob tego rozwiazac ? tzn zeby ladniej wygladalo $this->cos->metoda()...

myslalem o $_GLOBALS['db'];

tylko nie wiem czy to pomysl jest ok? mozecie wspomoc wlasnym pomyslem...?
M4chu
ladniej? Dla mnie o wiele ladniej wyglada $this->obiekt->metoda() niz $GLOBALS['obiekt']->metoda() smile.gif Za duzego wyboru niestety nie ma, pod php5 mozna tez (brzydko) przez global i (ladniej) singletonem: Klasa::getInstance()->metoda() smile.gif
tsufu
dzieki
przypuszczam ze chodzilo o
http://pl.php.net/overload
bo przy tym co podales to wyskakiwalo
Sorry, but the function __call is not in the online manual
winksmiley.jpg
ogolnie wszystko fajnie tylko tyle ze przeladowywanie dostepne jest od 4.3.0 a nie mam pewnosci czy to co roie bedzie dzialalo powyzej 4.3.0

wiec chyba wyglada na to ze nie baldzo winksmiley.jpg

ale dzieki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.