On 6 April 2011 21:08, David Harkness <davi...@highgearmedia.com> wrote:
> On Tue, Apr 5, 2011 at 8:28 AM, Richard Quadling <rquadl...@gmail.com>
> wrote:
>>
>> php -r "var_dump(10...19);"
>>
>> Interesting output ...
>>
>> string(6) "100.19"
>>
>> And that took me a little while to work out.
>>
>> It's all to do with PHP's type juggling.
>>
>> 10...19
>>
>> What I'm not sure is why the middle empty string is output as 0.
>>
>> "10" . . ".19" becomes "10" . "0" . ".19" which becomes "100.19"
>
> My guess is that PHP parses this as
>     10<decimal-point> <dot-operator> <decimal-point>19
> Because the dot operator requires strings, PHP converts both numbers to
> strings as
>     '10' <dot-operator> '0.19'
> which becomes your
>     100.19
> You can see this with
>     php > echo (string) 10.
>     10
>     php > echo (string) .19
>     0.19
> David
>

Aha! Yes. That makes a LOT more sense.

Excellent deduction.

So. Not a bug at all. Just a really weird sequence.

And obviously, spaces and more dots can't work.

Richard.
-- 
Richard Quadling
Twitter : EE : Zend
@RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to