Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z singletonem
fjellah
post
Post #1





Grupa: Zarejestrowani
Postów: 51
Pomógł: 1
Dołączył: 26.08.2006
Skąd: Simplicity

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


Chciałbym, za pomocą kodu
  1. <?php
  2. public static function getInstance ()
  3. {
  4. if (null === self::$_instance) {
  5.  self::$_instance = new self();
  6. }
  7.  
  8. return self::$_instance;
  9. }
  10. ?>
utowrzyć instację mojego sterownika do mysql-a. W związku z tym mam pytanie: czy mogę w tej funckji umieścić mysql_connect? Czy trzeba ją umieścić gdzie indziej? Pozdrawiam.
Go to the top of the page
+Quote Post
.radex
post
Post #2





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


niee (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

mysql_connect odpalasz tylko *raz*, a z takiego getInstance() korzysta się wiele razy.

  1. <?php
  2. class DB
  3. {
  4. public static $_instance;
  5. public function connect(...)
  6. {
  7. }
  8. public static function getInstance ()
  9. {
  10. if (null === self::$_instance) {
  11.  self::$_instance = new self();
  12. }
  13.  
  14. return self::$_instance;
  15. }
  16. }
  17. ?>
Go to the top of the page
+Quote Post
artega
post
Post #3





Grupa: Zarejestrowani
Postów: 174
Pomógł: 42
Dołączył: 22.07.2007
Skąd: /dev/random

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


Cytat
W związku z tym mam pytanie: czy mogę w tej funckji umieścić mysql_connect? Czy trzeba ją umieścić gdzie indziej?

Możesz co automatycznie nie oznacza, że powinieneś - to zależy od Twojej koncepcji.
Cytat
niee

mysql_connect odpalasz tylko *raz*, a z takiego getInstance() korzysta się wiele razy.

Równie dobrze mysql_connect można wywoływać wiele razy z identycznymi parametrami.
Go to the top of the page
+Quote Post
.radex
post
Post #4





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


Cytat(artega @ 20.06.2008, 08:49:22 ) *
Równie dobrze mysql_connect można wywoływać wiele razy z identycznymi parametrami.


Ale to całkowicie bez sensu.
Go to the top of the page
+Quote Post
artega
post
Post #5





Grupa: Zarejestrowani
Postów: 174
Pomógł: 42
Dołączył: 22.07.2007
Skąd: /dev/random

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


Cytat
Ale to całkowicie bez sensu.

To Twój punkt widzenia i nie oznacza, że nie można (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Równie dobrze może to przedstawiać się w ten sposób
  1. <?php
  2. class DB
  3. {
  4. public static $_instance;
  5. private $connection = null;
  6.  
  7. public function connect(...)
  8. {
  9. if ($this->connection) return null;
  10.  
  11. $this->connection = mysql_connect(...);
  12. }
  13. public static function getInstance ()
  14. {
  15. if (null === self::$_instance) {
  16.  self::$_instance = new self();
  17.  // self::$_instance->connect(...);
  18. }
  19.  
  20. // self::$_instance->connect(...);
  21. return self::$_instance;
  22. }
  23. }
  24. ?>
Go to the top of the page
+Quote Post

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: 24.08.2025 - 15:10