Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dwie kopie obiektu ze wspolnym elementem
Bastion
post
Post #1





Grupa: Zarejestrowani
Postów: 505
Pomógł: 0
Dołączył: 8.01.2005

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


Mam takie drobne zapytanie, przypuscmy ze mam klase A i w jej sklad wchodzi klasa ktora jest rozszerzeniem. Czyli :

class A { ... } - glwona klasa
i
class B extends A { ....} - klasa zwierajace np dane, tablice etc

(IMG:http://www.vertis.com.pl/trash/graf001.png)

i teraz , tworze dwie kopie

kopia1 = new A;
kopia2 = new A;

czy da sie zrobic tak aby rozszerzenie klasy (klasaB) byla wspolna dla obu kopii ? tak ze modyfikacja jakiegos elementu w kopia1 nalezacego do rozszerzenia byla namacalna w drugiej kopii ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Bastion
post
Post #2





Grupa: Zarejestrowani
Postów: 505
Pomógł: 0
Dołączył: 8.01.2005

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


niby tak, ale cos mi nie wyszlo

  1. <?php
  2.  
  3. class A
  4. {
  5. private static $arr = array();
  6.  
  7. public function foo($i)
  8. {
  9. return self::$arr[$i];
  10. }
  11. }
  12.  
  13. class B extends A
  14. {
  15. parent::$arr = array('bar0', 'bar1');
  16. }
  17.  
  18.  
  19. $kopia1 = new A;
  20. print $kopia1->foo(0);
  21. $kopia2 = new A;
  22. print $kopia1->foo(1);
  23.  
  24. ?>


Parse error: syntax error, unexpected T_STRING, expecting T_FUNCTION in /shine_home/html/modules/test/test.php on line 15

- gdyby ktos pytal co chce przez to osiagnac to chce miec dane jakby w oddzielnej klasie
tak aby nie powielaly sie one w kazdej kopii obiektu, czyli tak jakbym mial je poza klasa a w klasie global $arr, ale tak za bardzo nie chce miec

Ten post edytował Bastion 24.02.2006, 18:19:16
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: 8.10.2025 - 17:38