Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zliczanie wystąpienia obiektu
sokot
post
Post #1





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 26.01.2005

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


Witam jakiej zmiennej użyć w klasie aby zliczyła ona wystąpienie obiektu tzn chodzi mi o typ.
Próbwałem coś takiego:

  1. class obiekt {
  2.  
  3. private static $n = 1;
  4. private $id;
  5.  
  6.  
  7. public function __construct(){
  8.  
  9. $this->id = $this->n;
  10. $this->n++;
  11.  
  12. echo 'Tworzymy `obiekt`<br/>';
  13. } // end __construct();
  14.  
  15.  
  16.  
  17. public function __toString() {
  18. return 'Obiekt: ' . $this->id . '<br/>';
  19. }
  20. }


ale static mi sięwywala,
Podobny kod działał w javie.

Kiedyś przed php 5.2 wystarczyło napisać podobno:
  1. $obiekt1 = new obiekt();
  2. $obiekt2 = new obiekt();
  3. echo $obiekt1
  4. echo $obiekt2

i program wywalał
Obiekt id #1
Obiekt id #2
teraz trzeba korzystać z __toString
ale nie wiem jak to ogarnąć.

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
seth-kk
post
Post #2





Grupa: Zarejestrowani
Postów: 444
Pomógł: 79
Dołączył: 26.05.2009

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


bo zle sie odwolujesz do zmiennej statycznej http://pl2.php.net/manual/en/language.oop5.static.php
Go to the top of the page
+Quote Post
-=Peter=-
post
Post #3





Grupa: Zarejestrowani
Postów: 304
Pomógł: 51
Dołączył: 4.02.2005
Skąd: Kraków

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


  1. class obiekt {
  2.  
  3. private static $n = 1;
  4. private $id;
  5.  
  6.  
  7. public function __construct(){
  8.  
  9. $this->id = self::$n;
  10. self::$n++;
  11.  
  12. echo 'Tworzymy `obiekt`<br/>';
  13. } // end __construct();
  14.  
  15.  
  16.  
  17. public function __toString() {
  18. return 'Obiekt: ' . $this->id . '<br/>';
  19. }
  20. }


$n to składowa statyczna, a w php inaczej się odwołuje do składowych statycznych i niestatycznych.

Edit: ...

Ten post edytował -=Peter=- 20.08.2009, 11:18:49
Go to the top of the page
+Quote Post
sokot
post
Post #4





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 26.01.2005

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


Ok dzięki za szybką pomoc (IMG:style_emoticons/default/biggrin.gif)
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: 29.09.2025 - 09:05