Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Składnik klasy będący obiektem PHP5
Forum PHP.pl > Forum > Przedszkole
jagoda86
Witam

Chciałam się zapytać jak w PHP5 należy zdefiniować (a później odwołać się do niego) składnik klasy, który jest obiektem innej, wcześniej przez nas zdefiniowanej, klasy.
Pamiętam że w C++ była to bardzo prosta operacja np:
  1. <?php
  2. class punkt 
  3. { 
  4. public:
  5. int x,y; //współrzędne punktu
  6. }
  7.  
  8. class kwadrat 
  9. { 
  10. public:
  11. punkt p,q,w,d; 
  12. }
  13. //-------------------------------
  14. //--odwołanie-----------------
  15. //--w funkcji main------------
  16. kwadrat k1;
  17.  
  18. k1.p.= 2;
  19. k1.p.= 4;
  20. .
  21. .
  22. .
  23. ?>


Prosiłabym o pomoc i wyjaśnienie, jak powyższy przykład powinien wyglądać w PHP5. Z tego co sama próbowałam zrobić, wiem że "dosłownie" nie da się przerobić tego kodu z C++ na PHP5.

Z góry przepraszam jeśli podobny temat był już gdzieś na forum poruszany, starałam się szukać dokładnie ale nie znalazłam nic co by mi mogło pomóc.
dr_bonzo
1. mozesz zrobic z uzyciem publicznych 'skladnikow' (pol) lub za pomoca akcesorow ( getPunkt() )

2.
  1. <?php
  2. class Punkt
  3. {
  4. public $x;
  5. public $y;
  6. public function __construct( $x=0, $y=)
  7. {
  8. $this->x = $x;
  9. $this->y = $y;
  10. }
  11. }
  12.  
  13. class Kwadrat
  14. {
  15. public $p;
  16. public $q;
  17. public $r;
  18. public $s;
  19.  
  20. public function __construct()
  21. {
  22. $this->p = new Punkt();
  23. $this->q = new Punkt();
  24. $this->r = new Punkt();
  25. $this->s = new Punkt();
  26. }
  27. }
  28.  
  29.  
  30. $k = new Kwadrat();
  31. $k->p->x = 3;
  32. $k->p->y = 4;
  33.  
  34. ?>



3. ehh, przeczytaj regulamin przedszkola (o [tagach] w tytule topiku), tym razem poprawiam
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.