Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP/OOP][PHP/OOP] Jak wywołać metody klasy agregowanej poza klasą?
padalec83
post 20.06.2007, 14:17:06
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 9.02.2006

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


Witajcie!!
Chyba najłatwiej bedzie jak pokaze kod php:
  1. <?php 
  2. class DbAccess 
  3. { 
  4.  
  5. static private $self= null; 
  6.  
  7. private $con; 
  8.  
  9. protected function __construct() 
  10. { 
  11. $sDSN=array( 
  12. 'phptype'=>DB_TYPE, 
  13. 'username'=>DB_USER, 
  14. 'password'=>DB_PASSWORD, 
  15. 'hostspec'=>DB_HOST, 
  16. 'database'=>DB_NAME, 
  17. ); 
  18. if(DB::isError($this->con=DB::connect($sDSN))) 
  19. throw new DB__Error('<b>'.str_replace('nativecode=','',$this->con->getUserInfo()).'</b>',$this->con->getCode()); 
  20. else 
  21. return $this->con;  
  22. } 
  23. static public function is_connected() 
  24. { 
  25. if(self::$self===NULL) 
  26.  self::$self = new DbAccess(); 
  27.  return self::$self; 
  28. } 
  29. } 
  30. ?>


jezeli w klasie DbAccess odowałm sie do ktorejkolwiek z metod pakietu DB jest ok mam je dostepne poprzez php:
  1. <?php 
  2.  $this->con->getOne(); 
  3. ?>

Ale jezeli chce sie odwolac do tych samych metod poza ta klasa czyli php:
  1. <?php 
  2. claass Testowa 
  3. { 
  4. public function jakas_funkcja() 
  5. { 
  6.  
  7.  $dbh=DbAccess::is_connected(); 
  8. $dbh->getOne(); 
  9.  } 
  10. } 
  11. } 
  12. ?>


php generuje mi blad ze nie ma takiej metody. W jaki sposob ma sie dostac do metod klasy nizszej??
Pozdrawiam i zgóry dziwkuje za pomoc

Ten post edytował padalec83 20.06.2007, 14:17:49


--------------------
www.silversite.pl
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 11:26