Porównywanie obiektów (==, ===)
Założenie: Nauczyć się różnicy między operatorem porównania luźnego (==) a ścisłego (===) w kontekście obiektów w PHP.
Krok po kroku:
- Tworzenie klasy: Zdefiniujmy prostą klasę reprezentującą osobę.
- Tworzenie obiektów: Utwórzmy dwa obiekty klasy
Osoba
. - Porównanie luźne (==): Sprawdźmy, czy obiekty są równe używając operatora
==
. Operator ten porównuje wartości właściwości obiektów. - Porównanie ścisłe (===): Sprawdźmy, czy obiekty są identyczne używając operatora
===
. Operator ten sprawdza, czy zmienne wskazują na ten sam obiekt w pamięci.
imie = $imie;
$this->wiek = $wiek;
}
}
?>
W tym przykładzie widzimy, że ==
porównuje wartości, a ===
porównuje identyczność obiektów. $osoba1
i $osoba2
mają te same wartości, ale są to różne obiekty w pamięci, stąd wynik false
dla ==
. Natomiast $osoba3
jest tylko referencją do $osoba1
, więc ===
zwraca true
.
Ten przykład pokazuje podstawy porównywania obiektów w PHP. Zachęcamy do dalszego zgłębiania tematu programowania obiektowego!