#21055 [Opn->Bgs]: array_search skips element 0

From: Date: Mon, 16 Dec 2002 22:50:57 +0000
Subject: #21055 [Opn->Bgs]: array_search skips element 0
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-27900@lists.php.net to get a copy of this message
 ID:               21055
 Updated by:       moriyoshi@php.net
 Reported By:      trees@ieeecs.ece.utexas.edu
-Status:           Open
+Status:           Bogus
 Bug Type:         Arrays related
 Operating System: Linux RH 7.3
 PHP Version:      4.3.0RC3
 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

array_search() returns "0" when it finds a match at the first element.
Use array_search(...) !== false instead.



Previous Comments:
------------------------------------------------------------------------

[2002-12-16 16:44:41] trees@ieeecs.ece.utexas.edu

print( "Ignoring $cur[0]", "/tmp/pushing");
should be
print( "Ignoring $cur[0]" );

storeOutput is my method for sending output debugging to files.

------------------------------------------------------------------------

[2002-12-16 16:42:53] trees@ieeecs.ece.utexas.edu

(My system info at bottom)

Problem:
The following piece of code doesn't work as advertised:

 while ( $cur = mysql_fetch_row( $result ))
	if ( ! array_search( $cur[0], $userIDs ))
	  {
	    print("Pushing $cur[0]");
	    array_push( $userIDs, $cur[0] );
	  }
	else
	  print( "Ignoring $cur[0]", "/tmp/pushing");

My Solution:
I wrote my own little search method (ignoring Big-Oh consisderations
since I don't know PHP low-level types)

function my_array_search( $findMe, $inMe ){
{
  foreach ( $inMe as $key )
    if ( $key == $findMe )
      return true;

  return false;
}


Relevant system info from phpinfo();

Linux myHostName 2.4.18-18.7.xsmp #1 SMP Wed Nov 13 19:01:42 EST 2002
i686

 './configure' '--with-mysql' '--enable-calendar'
'--with-apxs=/usr/sbin/apxs' '--with-bz2' '--with-curl'
'--enable-track-vars' '--enable-trans-sid'
'--with-imap=/usr/local/lib'
'--with-imap-ssl=/lib' '--enable-debug'

Cheers.

------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=21055&edit=1



Thread (3 messages)

« previous php.bugs (#27900) next »