#45998 [Opn->Bgs]: in_array returning true for values not in the array

From: 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

« previous php.bugs (#128695) next »