#45998 [Opn->Bgs]: in_array returning true for values not in the array
| From: | felipe@php.net | Date: | Fri, 05 Sep 2008 01:43:41 +0000 |
| Subject: | #45998 [Opn->Bgs]: in_array returning true for values not in the array | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-128695@lists.php.net to get a copy of this message | ||
ID: 45998
Updated by: felipe@php.net
Reported By: raven990862 at gmail dot com
-Status: Open
+Status: Bogus
Bug Type: Arrays related
Operating System: Windows Vista
PHP Version: 5.2.6
New Comment:
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to
report
a bug at http://bugs.php.net/how-to-report.php
Use the third parameter:
- http://docs.php.net/in-array
Previous Comments:
------------------------------------------------------------------------
[2008-09-04 23:41:56] raven990862 at gmail dot com
Description:
------------
in_array is returning true for needles that are not in the haystack.
The problem is with with large needles that are similar except for
least significant digits.
Yes, it does work correctly when you set strict to true in in_array,
however I would expect this to work correctly with out it.
Reproduce code:
---------------
<?php
$a = array('999999999999999999');
if(in_array('999999999999999990',$a))
{
echo "true";
}
?>
Expected result:
----------------
This should return nothing.
Actual result:
--------------
in_array returns true and the echo occurs.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=45998&edit=1