Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Tablice klas wewnątrz klasy..., ... czyli dlaczego wyświetla tak, a nie inaczej
lood
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.07.2009

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


Dobry. Napisałem sobie dwie proste klasy dla testu, które wyglądają tak:
  1. <?php
  2.   class prod
  3.   {
  4.        var $nazwa, $cena;
  5.    
  6.        function write()
  7.        {
  8.            echo $this -> nazwa.": ".$this -> cena."$ <br>";
  9.        }
  10.   }
  11.  
  12.   class lista
  13.   {
  14.        private $produkty = array();
  15.        
  16.        public function __construct()
  17.        {
  18.            $this -> produkty = array();
  19.            
  20.            $this -> produkty[0] = new prod;
  21.            $this -> produkty[0] -> nazwa = "jablko";
  22.            $this -> produkty[0] -> cena = 1;
  23.            $this -> produkty[0] -> write();
  24.            
  25.            $this -> produkty[1] = new prod;
  26.            $this -> produkty[1] -> nazwa = "gruszka";
  27.            $this -> produkty[1] -> cena = 2;
  28.            $this -> produkty[1] -> write();
  29.        }
  30.        
  31.        public function show()
  32.        {
  33.            $this -> produkty[0] -> write;
  34.            $this -> produkty[1] -> write;
  35.        }
  36.   }
  37. ?>


No i potem tego czegoś używam:
  1. <?php
  2.   $a = new lista;
  3.   $a -> show();
  4. ?>


Oczekiwanym przeze mnie efektem było więc:
Kod
jablko: 1$
gruszka: 2$
jablko: 1$
gruszka: 2$


... ale jak to często w życiu bywa dostaję coś innego niż to co chciałem:
Kod
jablko: 1$
gruszka: 2$


Tutaj gość miał podobny problem, ale ja jego błędów nie popełniłem. Pytanie brzmi: czemu?
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 Aktualny czas: 21.08.2025 - 07:51