![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.07.2008 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
Hej,
Testuje poniższy kod: Kod <?php class osoba { public $imie; public $nazwisko; public function __construct($imie, $nazwisko) { $this -> ustawPersonalia($imie, $nazwisko); } // end __construct(); public function ustawPersonalia($imie, $nazwisko) { $this -> imie = $imie; $this -> nazwisko = $nazwisko; } // end ustawPersonalia(); public function personalia() { return $this -> imie.' '.$this -> nazwisko; } // end personalia(); } $osoba = new osoba('Adam', 'Kowalski'); echo $osoba -> personalia(); ?> Wynik to 'Adam Kowalski', ale co ciekawe jak zmieniam ten wiersz: Kod return $this -> imie.' '.$this -> nazwisko; na taki:Kod return $this -> nazwisko.' '.$this -> imie; to wyświetla mi 'Kowalski Adam', a myślałem że wyrzuci błąd. Myślałem że to zależy od tego w jakiej kolejności zadeklaruje odwołanie: Kod $this -> imie = $imie; $this -> nazwisko = $nazwisko; czyli musi być najpierw imię, a później nazwisko, a tu się okazuje, że nie. Jak wpisuję nazwisko dwukrotnie po "return $th ..." to dwa razy wyświetla nazwisko 'Kowalski Kowalski'. Z czego to wynika? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 320 Pomógł: 53 Dołączył: 18.09.2007 Skąd: Radom Ostrzeżenie: (0%) ![]() ![]() |
ponieważ tworzy Ci się tablica a z niej możesz pobierac wszystkie dane i ile razy chcesz
$osoba = new osoba('Adam', 'Kowalski'); var_dump($osoba); wyświetli Ci w ładny sposób tablice |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.07.2008 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
W którym miejscu mam wkleić var_dump($osoba); ?
Jak wklejam na końcu za echo $osoba -> personalia(); to nic nie wyświetla, jak przed tym wersem to też nic. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Wynik to 'Adam Kowalski', ale co ciekawe jak zmieniam ten wiersz: Kod return $this -> imie.' '.$this -> nazwisko; na taki: Kod return $this -> nazwisko.' '.$this -> imie; to wyświetla mi 'Kowalski Adam', a myślałem że wyrzuci błąd. Moze to zrozumiesz: znajdź sobie półkę, połóż na tę półke w takiej kolejnosci: jabłko, gruszkę. Teraz cchesz wziąśc z tej półki gruszke. Uda ci sie czy nie? Przeciez gruszke położyles jako drugą.... ![]() i uzywaj wlasciwego bbcode -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
ponieważ tworzy Ci się tablica a z niej możesz pobierac wszystkie dane i ile razy chcesz $osoba = new osoba('Adam', 'Kowalski'); var_dump($osoba); wyświetli Ci w ładny sposób tablice Zwróć uwagę że to nie tablica, ale obiekt. do autora: Wyobraź sobie sytuację ... masz dwa koszyki, do pierwszego ( zielonego ) wkładasz 5 jabłek, a do drugiego ( czerwonego ) wkładasz 10 jabłek. Teraz żeby sprawdzić ile jest jabłek w każdym koszyku musisz do nich zaglądać w takiej samej kolejności jak wkładałeś jabłka ? NIE bo te jabłka już tam są i niezależnie w jakiej kolejności będziesz do nich zaglądał będzie tam tyle samo jabłek. Tutaj jest dokładnie tak samo. Stworzyłeś dwie zmienne , przypisałeś im wartości. Nie ważne w jakiej kolejności to zrobiłeś, ważne jest to że w ogóle to zrobiłeś. Teraz odwołując się do tych zmiennych masz tam zawsze takie same wartości. A kolejność nadawania zmiennym wartości jak i odczytywanie tych wartości jest bez różnicy. EDIT UP: nospor jak zwykle szybszy:D Ten post edytował Cienki1980 27.02.2009, 10:07:51 -------------------- 404
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.07.2008 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
Rozumiem.
Tylko myślałem, że w programowaniu trzeba się sztywno pewnych konwencji trzymać. Ok - dzięki za pomoc. Przykłady wyczerpujące i przejrzyste ![]() Ten post edytował art_php 27.02.2009, 10:16:02 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 6.07.2025 - 09:47 |