type hinting throwing a fatal error
| From: | Derick Rethans | Date: | Mon, 08 Aug 2005 09:50:20 +0000 |
| Subject: | type hinting throwing a fatal error | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-17581@lists.php.net to get a copy of this message | ||
Hei,
currently if you pass a wrong object's type to a typehinted parameter:
derick@kossu:~$ cat /tmp/foo.php
<?php
class foo {
function bar(foo $a)
{
}
}
$a = new foo;
$a->bar(new stdClass);
?>
derick@kossu:~$ php /tmp/foo.php
Fatal error: Argument 1 must be an instance of foo in /tmp/foo.php on
line 3
As type hinting is a new OO thing, it might perhaps make some sense to
make this an exception instead - as this error might also happen for
dynamic things by people who use the classes you designed. In that case
having this fatal error to stop the whole application can be annoying.
Opinions?
Derick