> -----Original Message-----
> From: Stas Malyshev [mailto:smalys...@sugarcrm.com]
> Sent: Tuesday, July 15, 2014 2:00 AM
> To: Andrea Faulds; Chris Wright
> Cc: PHP internals
> Subject: Re: [PHP-DEV] [RFC] Scalar Type Hinting With Casts (re-opening)
>
> Hi!
>
> > I suggested on IRC that empty strings, TRUE, FALSE, NULL, and values
> > that validate for the int type hint could be accepted. Is that a good
> > idea? Though it feels a bit loose, I think it covers all the important
> > common use cases.
>
> Then you need to make all internal functions that accept bool work this
> way
> too. But I'm not sure why you need this. You accept that if("foo") works.
> Then
> why "function foo(bool $x) { if($x) { ... " should work differently? Yes,
> it is an
> edge case and bad code style. So are many other legal constructs. In my
> opinion, it is better to permit edge cases and be consistent than try to
> carve
> out perfect set of "what can be boolean" and get lost in the maze of
> exceptions and conditions. E.g. if we say we treat 1 and "1" mostly the
> same,
> then we should say "unless we convert them to bool in a context of a
> function
> call where they are not". I think it should be kept simpler - if we accept
> "foo"
> in boolean context, then we should just accept it.

Exactly.

Zeev

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to