Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]OOP, prosty skrypt problem
Forum PHP.pl > Forum > Przedszkole
mage
Witam,
Czy ktoś mi pomoze poprawić ten skrypt tak aby działał? Siedze już nad tym ponad tydzień i nie mogę dojść do rozwiązania. Zaznaczam, że jest bardzo początkujacy w php.
Polecenie:

Stwórz obiekt, którego zadaniem będzie magazynowanie produktów.

Każdorazowe wywołanie metody addProduct('nazwa produktu') dopisze element do stosu.

Metoda showStack() wyświetli elementy w odpowiedniej kolejności zgodnie z definicją stosu.


  1.  
  2. <?php
  3.  
  4.  
  5. class Magazyn{
  6.  
  7. public $produkty = "0";
  8.  
  9.  
  10. public function addProduct($produkty){ // kazdorazowe wywołanie metody dopisze produkt do grupy
  11. return $this->produkty = $produkty++;
  12. }
  13.  
  14.  
  15. public function showstack(); // metoda ma za zadnie wyświetlic w odpowiedni sposób produkty dodane do grupy
  16. return $this->produkty;
  17.  
  18.  
  19. }
  20.  
  21.  
  22. $pro1 = new Magazyn; // zadanie magazynowanie elementów/produktow
  23.  
  24. $tablica = array(1,2,3,4,5,6,7,8,9);
  25.  
  26. foreach ($tablica as $value) {
  27. echo "$value";
  28. }
  29.  
  30. echo $pro1->addProduct($produkty);
  31.  
  32.  
  33.  
  34. ?>
  35.  
  36.  
nospor
czemu uwazasz ze to
return $this->produkty = $produkty++;
jest dodaniem produktu do stosu?

Albo tu
$pro1->addProduct($produkty);
dodajesz zmienna $produkty ale ta zmienna nigdzie nie jest zdefiniowana
mage
Dzięki za odpowiedź. Właśnie nie wiem jak mam zapisać dodanie produktu do stosu, podobnie z metoda showStack
Podpowiesz coś?

edit:
return $this->produkty = $produkty++;

w.g mnie te polecenie zwraca zmieną produkty i automatycznie dodaje produkt na stos.
viking
Pseudokod

  1. class Produkt {jakieś jego właściwości}
  2.  
  3. class Magazyn {
  4. private $products = [];
  5. public function addProduct(Product $product) {
  6. $this->products[] = $product;
  7. }
  8. }


Dodatkowo można poczytać http://php.net/manual/en/class.countable.php http://php.net/manual/en/class.arrayaccess.php i iteratorach. Może cię zainteresować splstack.
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.