Re: [RFC] ifsetor operator
| From: | George Schlossnagle | Date: | Fri, 16 Apr 2004 20:36:55 +0000 |
| Subject: | Re: [RFC] ifsetor operator | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-9288@lists.php.net to get a copy of this message | ||
I vote for nvl(), as the oracle pl/sql function of the same name has this exact semantic.
On Apr 16, 2004, at 4:19 PM, Wez Furlong wrote:
It's worth nothing that, if T_IFSETOR was recognized by the scanner as "?:", then Sascha/GCC "?:" operator is also implemented by this patch, by changing the parser rule from this: T_IFSETOR '(' variable ',' expr ')' to this: T_IFSETOR variable ':' expr --Wez. ----- Original Message ----- From: "Marcus Boerger" <helly@php.net> To: <internals@lists.php.net> Cc: "Jason Garber" <jason@ionzoft.com>; "Andi Gutmans" <andi@zend.com> Sent: Friday, April 16, 2004 8:38 PM Subject: [PHP-DEV] [RFC] ifsetor operator// Postal Engine -- http://www.postalengine.com/ // Ecelerity: fastest MTA on earth[RFC] ifsetor operator Hello List, i also agrre that an internal function is much better. And here is it as such an internal function (that does not result in an expensive function call). Synopsis: "ifsetor" "(" value "," default ")" Returns the value if it exists or a given default value. Syntax: "ifsetor" "(" variable [ "," expression ] ")" Semantic: - The value in question must be a variable. - The default value can be any expression. - The default value can be omitted in which case NULL will be used. http://marcus-boerger.de/php/ext/ze2/ze2-ifsetor-20040416-2.diff.txt best regards marcus Friday, April 16, 2004, 2:12:04 AM, you wrote:-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php // George SchlossnagleHello Jason,here is your operator patch: http://marcus-boerger.de/php/ext/ze2/ze2-ifsetor-20040416.diff.txtcurrently it uses the following syntax:$var $: $defaulwhich would equalisset($var) ? $var : $defaultNotice that at the moment the operator is '$:' and not '?:'. This is because i haven't looked on how to solve the conflicts i get when i use '?:'. If there is more interest in that operator i could invest more work in trying to fix that problem.best regards marcusAccording to your options and the possibility to implement this as a function. That would only work as a parser internal function like empty or set. Doing so would be very easy i guess. Though it would require a new keyword say 'ifsetor' (which reflects its purpose more as 'setor').best regards marcus[...] -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php