Am inceput sa citesc PHP Object, Patterns, and Practice si am inteles in sfarsit ce inseamna Type Hinting, desi il folosisem, dar nu stiam ca se numeste asa.
De exemplu, fara Type Hinting daca ai o metoda:
class MyClass { public function myFunc($unObiect) { echo "bla bla"; } }
poti sa apelezi aceasta metoda:
$obiect = new MyClass(); $obiectRau = new clasaRea(); $obiectBun = new clasaBuna(); $obiect->myFunc($obiectBun);
DAR si cu
$obiect->myFunc($obiectRau);
Cu Type Hinting, am rescrie myFunc astfel:
class MyClass { public function myFunc(clasaBuna $unObiect) { echo "bla bla"; } }
acum, daca vom apela
$obiect->myFunc($obiectRau);
va da Fatal Error. De ce? Pentru ca $obiectRau nu este de tipul clasaBuna, asa cum cere definitia metodei.
Sper ca am inteles corect 🙂
Facebook Comments
Foarte bine explicat … Keep it up .
Interesant..mai astept tutoriale si despre Symfony 😉