Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Zasięg zmiennych OOP
Kloc
post 30.11.2014, 13:11:45
Post #1





Grupa: Zarejestrowani
Postów: 115
Pomógł: 8
Dołączył: 8.06.2014

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


Siemanko, muszę dostać się do zmiennej w klasie, która jest poza nią.

  1. $zmiennaPoZaKlasa = 'Jestem zmienna spoza klasy';
  2.  
  3. class mojaKlasa{
  4. public function mojaMetodaPrywatna(){
  5. echo '<p>To jest zmienna spoza klasy '.$zmiennaPoZaKlasa.'</p>'; //nic sie nie wyswietla :(
  6. }
  7. }
  8.  
  9. $class = new mojaKlasa;
  10. $class->mojaMetodaPrywatna();
  11.  


Ten post edytował Kloc 30.11.2014, 13:15:06


--------------------
Kloc = Kolor
Obama !== Murzyn
Obama === Kloc


Jak Ci pomogłem to daj Pomógł, tu nie chodzi o te Pomógł, bo to do niczego nie potrzebne, ale daj! :D
Go to the top of the page
+Quote Post
zielu001
post 30.11.2014, 13:25:32
Post #2





Grupa: Zarejestrowani
Postów: 87
Pomógł: 3
Dołączył: 15.08.2009

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


  1. $class->mojaMetodaPrywatna($zmiennaPoZaKlasa);
  2. public function mojaMetodaPrywatna($zmienna){
  3.  
  4. }

blink.gif


--------------------
"Zło do triumfu potrzebuje tylko tego, aby dobrzy ludzie nic nie robili"
Go to the top of the page
+Quote Post
Kloc
post 30.11.2014, 14:49:22
Post #3





Grupa: Zarejestrowani
Postów: 115
Pomógł: 8
Dołączył: 8.06.2014

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


A do zmiennej z innej klasy w innej klasie?

  1. class mojaKlasa {
  2. public function mojaMetoda(){
  3. $zmienna = 1;
  4. }
  5. }
  6.  
  7. $class = new mojaKlasa;
  8. $class->mojaMetoda();
  9.  
  10. class mojaKlasa2 {
  11. public function mojaMetoda2(){
  12. echo $zmienna; //nic sie nie wyswietla :(
  13. }
  14. }
  15.  
  16. $class2 = new mojaKlasa2;
  17. $class2->mojaMetoda2();


Ten post edytował Kloc 30.11.2014, 20:01:34


--------------------
Kloc = Kolor
Obama !== Murzyn
Obama === Kloc


Jak Ci pomogłem to daj Pomógł, tu nie chodzi o te Pomógł, bo to do niczego nie potrzebne, ale daj! :D
Go to the top of the page
+Quote Post
zielu001
post 30.11.2014, 14:56:38
Post #4





Grupa: Zarejestrowani
Postów: 87
Pomógł: 3
Dołączył: 15.08.2009

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


Użyj np. dziedziczenia


--------------------
"Zło do triumfu potrzebuje tylko tego, aby dobrzy ludzie nic nie robili"
Go to the top of the page
+Quote Post
by_ikar
post 30.11.2014, 15:09:08
Post #5





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Cytat(Kloc @ 30.11.2014, 14:49:22 ) *
A do zmiennej z innej klasy w innej klasie?


Zależy co chcesz osiągnąć.
Go to the top of the page
+Quote Post
Pyton_000
post 30.11.2014, 17:44:31
Post #6





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


albo gettery abo publiczna zmienna
Go to the top of the page
+Quote Post
Kloc
post 30.11.2014, 20:02:28
Post #7





Grupa: Zarejestrowani
Postów: 115
Pomógł: 8
Dołączył: 8.06.2014

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


Możecie mi pokazać jak powinno to wyglądać na powyższym przykładzie, bo próbuje i wali mnie błędami na prawo i lewo biggrin.gif


--------------------
Kloc = Kolor
Obama !== Murzyn
Obama === Kloc


Jak Ci pomogłem to daj Pomógł, tu nie chodzi o te Pomógł, bo to do niczego nie potrzebne, ale daj! :D
Go to the top of the page
+Quote Post
irmidjusz
post 30.11.2014, 21:08:35
Post #8





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

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


Słuchaj, przewodnia idea jest taka, że w klasie unikasz bezpośredniego odwoływania się do zmiennych poza klasą, albo pól innych klas (zgroza) smile.gif Jeśli coś trzeba zrobić związanego z takim polem innej klasy, to być może powinna być do tego odpowiednia metoda w takiej klasie. Jeśli już faktycznie potrzebujesz pobrać wartość takiego pola, to do tego ta klasa, w której jest to pole (nie-publiczne, rzecz jasna) może udostępniać metodę pobierającą (zwyczajowo się na to mówi getter).


--------------------
there is much to be learned
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: 19.04.2024 - 14:08