I tried to, but I honestly can't see the problem. No decent programmer makes error by sending wrong type of parameter and this feature is 100% optional. I know for sure that even in my dev computer, I would use this feature, and probably most programmers aware of the issue.
Maybe simpler example: if I send a string to above function, the only difference is that PHP would start executing inner code. But an inner line like $user->getEmail() would still throw fatal error, still very easy to spot. But again, I really don't see that happening and I am not an expert. And I still never make errors like that, not even when I was learning php. And if dev computer keeps checking type (default), it is very easy to spot a big mistake like that. Given this is open discussion, I would like to see where I was wrong. Btw, you were not harsh at all. On Mon, Jul 16, 2018 at 8:01 AM Arvids Godjuks <arvids.godj...@gmail.com> wrote: > On Sun, Jul 15, 2018, 22:45 Zeljko Mitic <mitke...@gmail.com> wrote: > >> PHP is dynamic language and each typed typehinted parameter has to be >> checked every time. I am suggesting new php.ini value "typecheck.enable = >> 1" which can be turned off. >> >> Example: >> with default php config, a code like this would check each member of >> $users >> array: >> >> function demo(User ...$users) {} >> >> but with "typecheck.enable = 0", same code would be treated like it was >> written this way: >> >> function demo(...$users) {} >> >> Basically, php would simply *ignore* typehints and work like they are not >> there. >> >> It would be programmers responsibility to send correct values but people >> using typehints are not those still learning the basics. >> >> Just like it is programmers responsibility to restart php-fpm when using >> opcache.validate=0, it would be theirs responsibility to send correct >> values. Any decent IDE would mark errors for wrong parameter type and with >> tools like phpstan, it is almost impossible to make one. Only development >> computers would need to have this checks turned on. >> >> This creates no BC problems as it is a new feature. Given that typechecks >> can be turned off, all existing programs would benefit from extra speed. >> >> I am sending this mail by following rules from >> https://wiki.php.net/rfc/howto . I don't have any knowledge of php >> internals so unfortunatelly, I can't help with this. I at least hope >> someone will take this RFC into consideration. >> > > Hello, > > php.ini settings that modify language behaviour on such large scale are > not up for introduction or even discussion. > PHP has been getting rid of those past 10 years, so forgive me for > harshness, but as a user land developer I say "no chance In hell". > > Arvids, > >>