Pogledajte određenu poruku
Staro 20. 01. 2010.   #1
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default type hinting in php 5.3

nemam 5.3 pri ruci da probam, jel dodat na kraju type hinting u funkcijama i za integer, string, boolean i sl. tipove?

Citam ovde nesto o tome kako je to bilo predlozeno da radi, i moram priznati da mi se ne dopada uopste... naravno, bolje bar neki type hinting, nego nikakav, ali mi se cini kao da ovakvo resenje nema mnogo veze sa filozofijom php-a.

Po ovom predlogu ako je f-ja definisana kao
PHP kôd:
function bla(int $a) {..} 
poziv tipa bla('1') ce da baci gresku. To je ok za jezike koji imaju zakucane tipove podataka, tamo takvo ponasanje ima smisla, ali posto je u php-u za funkcionalnost programa apsolutno nebitno da li je 1 ili '1', a 99% podataka sa kojima se radi su stringovi (jer $_POST i $_GET uvek vracaju string), onda bi (IMHO) ipak trebalo type-casting implementirati malo inteligentnije, da se gleda da li prosledjena vrednost moze pravilno da se castuje, a ne sam tip podatka.

Zapravo ako bi to tako uradili mislim da bi to bila jedna od najgenijalnijih izmena u PHP-u u poslednje vreme, jer bi ustedela gomilu provera, samo definises da u funkciji ocekujes nesto sto je validan integer, i ne moras da brines o tome vise, ni u samoj funkciji, ni kod pozivanja. Plus mnogo je brze da to proverava kompajler nego da se rucno pisu te provere.

Sta vi mislite?
__________________
Leadership is the art of getting people to want to do what you know must be done.
ivanhoe je offline   Odgovorite uz citat