OOP v PHP: Porovnávání a identita
V PHP5 byla změněna funkčnoust operátoru porovnávání a identity.
V PHP5 jsou si dvě proměnné rovny, pokud jsou obě instancemi stejné třídy (instance1 == instance2). Dvě instance jsou identické, pokud jsou to stejné instance stejné třídy (instance1 === instance1). Příklad:
vlastnost = $vlastnost;
}
}
class Trida2{
private $vlastnost;
function Flag($vlastnost = true) {
$this->vlastnost = $vlastnost;
}
}
$o = new Trida1();
$p = new Trida1();
$q = $o;
$r = new Trida2();
echo „Instance stejné třídy“;
porovnatObjekty($o, $p);
echo „Reference na stejné instance“;
porovnatObjekty($o, $q);
echo „Instance dvou různých tříd“;
porovnatObjekty($o, $r);
?>
Myslím, že příklad nepotřebuje dlouhý komentář. Vždy je volána funkce, která vrací výsledek porovnávání. Skript vypíše:
Instance stejné třídy
o1 == o2 : TRUE
o1 != o2 : FALSE
o1 === o2 : FALSE
o1 !== o2 : TRUE
Reference na stejné instance
o1 == o2 : TRUE
o1 != o2 : FALSE
o1 === o2 : TRUE
o1 !== o2 : FALSE
Instance dvou ruzných tříd
o1 == o2 : FALSE
o1 != o2 : TRUE
o1 === o2 : FALSE
o1 !== o2 : TRUE
Pozn. red.: Zdůrazňujeme, že tento text se týká PHP 5.
Mohlo by vás také zajímat
-
Landing page: Jak vytvořit landing page s vysokým CTR
7. května 2024 -
Jaký monitor je nejlepší k novému Macu Mini?
25. listopadu 2024 -
Gaming na HDR monitoru: Stojí to za to?
12. srpna 2024 -
Nejnovější
-
-
-
Milují Češi domény víc než pivo?
24. února 2025 -