Hi,

I wouldn't really worry about the ternary operator too much. These kinds of
micro optimizations really only appear to make a difference in contrived
benchmarks and usually aren't the norm in real life applications. However,
with that said, an optimization is an optimization. Optimizations like this
are fairly easy to detect in code. There is an optimizer extension in
development (pecl/optimizer) that includes an optimization which converts
ternary operations to if-else structures. I think an extention like this is
the better way to go for such optimizations. Plus, it includes many other
goodies to make PHP code slightly faster :).  Though, the downside is that
pecl/optimizer still isnt completely stable.

On Sun, Dec 14, 2008 at 4:30 PM, David Grudl <da...@grudl.com> wrote:

>
> -------- Původní zpráva --------
> Od: Ilia Alshanetsky <i...@prohost.org>
>
>> While it is slower due to the use of temp vars, in my experience unless
>> you have a few hundred operations involving ternary operator you cannot even
>> see the difference. Even then there are typically way more important areas
>> of code that need to be optimized. The only time you can really tell its
>> slower is in synthetic benchmarks.
>>
> Few hundred operations involving ternary operator is nothing unusual ;)
>
>
>
> -------- Původní zpráva --------
> Od: Alexey Zakhlestin <indey...@gmail.com>
>
>> On Sun, Dec 14, 2008 at 8:06 PM, David Grudl <da...@grudl.com> wrote:
>>  Do you have any numbers?
>>
>>
> $arr = range(0, 1000000); // very very huge array
>
> $foo = true ? $arr : NULL; // 140,00 milisec
>
> if (true) $foo = $arr; else $foo = NULL; // 0,02 milisec
>
>
> DG.
>
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

Reply via email to