Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]OOP, prosty skrypt problem
mage
post 20.03.2019, 17:44:44
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 20.03.2019

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


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.  
Go to the top of the page
+Quote Post
nospor
post 20.03.2019, 17:52:29
Post #2





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




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


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
mage
post 20.03.2019, 18:00:48
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 20.03.2019

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


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.

Ten post edytował mage 20.03.2019, 18:04:14
Go to the top of the page
+Quote Post
viking
post 20.03.2019, 18:14:07
Post #4





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


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.


--------------------
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 20.04.2024 - 03:15