Re: what happened to that new isset() like language
| From: | Marian Kostadinov | Date: | Sun, 30 Oct 2005 09:10:14 +0000 |
| Subject: | Re: what happened to that new isset() like language | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-19845@lists.php.net to get a copy of this message | ||
Whatever the name is, I think the most important thing should be that
second argument is not evaluated if the first one is set.
And about the name - $a = $b ?? $c looks good. $a ??= $c is fine too
because it is close to $a = $b || $c and $a ||= $c..
On 30/10/05, Ron Korving <r.korving@xit.nl> wrote:
> I'm a big fan of coalesce($param1, $param2, ..., $paramN) (or firstset())..
> The syntax allows for more than what ifsetor($var, $value) would do.
> Ifsetor() could be done in userspace, but I don't see how coalesce() could,
> because of the variable number of parameters.
>
> Ron
>
>
> "Sean Coates" <sean@caedmon.net> wrote in message
> news:43643EDF.1010301@caedmon.net...
> > Bob Silva wrote:
> > > It should be a function and not a language construct IMHO. Either
> ifsetor or
> > > overload the isset statement (which may not be possible within the
> engine).
> >
> > It _has_ to be a language construct, and not a function (otherwise, we'd
> > get a notice when first using the variable).
> >
> > It could, however, be a language construct that LOOKS like a function.
> > This is how isset() and empty() work.
> >
> > Also, if this was possible as a function, it could be solved in
> > user-space, and we wouldn't be having this conversation.
> >
> > (not that I claim to be an internals expert.. if I'm wrong, feel free to
> > correct me)
> >
> > To pitch in my 0.02 CAD: this functionality is valuable to me, but I
> > don't care what we name it, or how it works. I could also live without
> > it: isset() + ternary + redundant typing.
> >
> > S
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>