PHP - obiektowe PHP - wskazywanie typu, typy klasy
| DZIAŁANIE: |
$b Tak jest to obiekt typu B $b Tak jest to obiekt typu A $a To nie jest to obiekt typu B $a Tak jest to obiekt typu A $c implementuje interfejs I Podano poprawny typ parametru tej funkcji |
Kod:

Ewentualne Objaśnienia:
Nowością w PHP 5 jest słowo kluczowe instanceof - pozwala ono na sprawdzenie typu danego obiektu, możemy sprawdzić czy obiekt jest egzemplarzem danej klasy, czy dziedziczy po klasie czy też implementuje jakiś interfejs.
Wszystkie te czynności widać w naszym przykładzie bardzo prostym zresztą. Mamy 3 klasy oraz 1 interfejs. Klasa C implementuje ten interfejs. Następnie tworzymy 3 obiekty $a $b oraz $c. Jak widać $b jest obiektem typu zarówno A i B ponieważ klasa B jest klasą potomną klasy A. Obiekt $a jest obiektem typu A ale nie B. Obiekt $c implementuje interfejs I .
Kolejną nowością PHP 5 jest wskazywanie typu klasy. Zazwyczaj kiedy do danej funkcji przekazywany jest parametr - nie przekazuje się jego typu. Jednak można to zrobić - możemy określić jak w przykładowej banalnej funkcji typ klasy jaka powinna być przekazana do funkcji. Widać, że do tej funkcji przekazujemy obiekt $b, który jak już sprawdziliśmy jest typem klasy B. Gdybyśmy przekazali na przykład obiekt $a pojawiłby się nam błąd, że argument musi być "instance" of B .