Hallo,
Nog even een vraagje over een array typehint. En dan heb ik het over deze, tadaaa... :
<?php
public function foo(array $bar) {
}
?>
Als $bar nu geen array is maar een int, dan is dit de foutmelding:
"PHP Catchable fatal error: Argument 1 passed to foo() must be of the type array, integer given ..."
Als ik dit doe, geen typehint... en $bar is weer een int in plaats van een array...
<?php
public function foo($bar) {
foreach ($bar as $kruk) {
echo $kruk;
}
}
?>
Dan is dit de foutmelding:
"PHP Warning: Invalid argument supplied for foreach() ..."
De eerste foutmelding is dus een catchable fatal error en de tweede foutmelding is een warning. Nu vraag ik me af of hier een verschil in zit. In allebei de gevallen gaat het fout. Zit er dan nog een voordeel aan zo'n catchable fatal error? Dat begrijp ik nog niet helemaal eigenlijk...
1.762 views