#45712 [Opn->Ctl]: $something == NaN returns true with 5.3, false with 5.2.*
ID: 45712
Updated by: jani@php.net
-Summary: $something == NaN returns true with PHP 5.3.0, which
returns false until 5.2.6
Reported By: for-bugs at hnw dot jp
-Status: Open
+Status: Critical
Bug Type: Variables related
-Operating System: MacOSX
+Operating System: *
PHP Version: 5.3.0alpha1
Previous Comments:
------------------------------------------------------------------------
[2008-08-05 02:39:58] for-bugs at hnw dot jp
Description:
------------
There is == operator's problem dealing with NaN(Not a Number) in PHP
5.3.0alpha1. This behavior is different with PHP 5.0.0-5.2.6, so this is
compatibility problem.
Reproduce code:
---------------
<?php
$nan = (-1e300*1e300)/(1e300*1e300); // float(NAN)
var_dump($nan=='');
var_dump($nan==0.5);
var_dump($nan==50);
var_dump($nan=='500');
var_dump($nan=='abc');
var_dump($nan==$nan);
Expected result:
----------------
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
Actual result:
--------------
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=45712&edit=1
Thread (10 messages)
- for-bugs at hnw dot jp
- jani@php.net#45712 [Opn->Ctl]: $something == NaN returns true with 5.3, false with 5.2.*
- jani@php.net#45712 [Ctl]: $something == NaN returns true with 5.3, false with 5.2.*
- for-bugs at hnw dot jp#45712 [Ctl]: $something == NaN returns true with 5.3, false with 5.2.*
- tony2001@php.net#45712 [Ctl->Asn]: $something == NaN returns true with 5.3, false with 5.2.*
- tony2001@php.net#45712 [Asn->Csd]: $something == NaN returns true with 5.3, false with 5.2.*
- jwvdveer at gmail dot comBug #45712 [Com]: $something == NaN returns true with 5.3, false with 5.2.*
- philip@php.netBug #45712 [Csd->ReO]: $something == NaN returns true with 5.3, false with 5.2.*
- cmbecker69 at gmx dot deBug #45712 [Com]: $something == NaN returns true with 5.3, false with 5.2.*
- nikic@php.netBug #45712 [ReO->Csd]: $something == NaN returns true with 5.3, false with 5.2.*