Bug #47643 [Com]: array_diff() takes over 3000 times longer than php 5.2.4

From: Date: Fri, 28 Nov 2014 14:39:27 +0000
Subject: Bug #47643 [Com]: array_diff() takes over 3000 times longer than php 5.2.4
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-188836@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=47643&edit=1

 ID:                 47643
 Comment by:         samantha at adrichem dot nu
 Reported by:        viper7 at viper-7 dot com
 Summary:            array_diff() takes over 3000 times longer than php
                     5.2.4
 Status:             Closed
 Type:               Bug
 Package:            Performance problem
 Operating System:   *
 PHP Version:        5.*, 6CVS (2009-04-13)
 Assigned To:        felipe
 Block user comment: N
 Private report:     N

 New Comment:

Could this fix be the reason why (since i can't find anything else in the changelog)
array_diff() now (php 5.6) does string comparisons and no longer supports multidimensional arrays,
whilst in php 5.3.23 it does? (though documentation says it doesn't)


Previous Comments:
------------------------------------------------------------------------
[2011-02-23 14:56:06] jaromir dot dolecek at skype dot net

Looking at the fix, the same problem seems to be possible to happen with 
DIFF_ASSOC option.

------------------------------------------------------------------------
[2010-11-11 22:25:36] felipe@php.net

Automatic comment from SVN on behalf of felipe
Revision: http://svn.php.net/viewvc/?view=revision&revision=305279
Log: - Fixed bug #47643 (array_diff() takes over 3000 times longer than php 5.2.4)

------------------------------------------------------------------------
[2010-11-01 18:18:32] felipe@php.net

This bug has been fixed in SVN.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.



------------------------------------------------------------------------
[2010-11-01 18:16:49] felipe@php.net

Automatic comment from SVN on behalf of felipe
Revision: http://svn.php.net/viewvc/?view=revision&revision=305011
Log: - Fixed bug #47643 (array_diff() takes over 3000 times longer than php 5.2.4)

------------------------------------------------------------------------
[2010-08-04 05:21:29] lonnyk at gmail dot com

I feel as though the actual bug here is the fix that caused this issue.  If you 
revert the fix and typecast the variables passed into the custom compare function 
as (string) then this works fine.  This is in line with other non-user defined 
comparison functions, they compare as === and not ==

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


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=47643


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


Thread (15 messages)

« previous php.bugs (#188836) next »