php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #19259 sort-functions don't work
Submitted: 2002-09-05 18:44 UTC Modified: 2002-11-16 09:47 UTC
From: bug020905 at stormkeepers dot com Assigned:
Status: Closed Package: Arrays related
PHP Version: 4.3.0 RC1 OS: OSF1 V4.0
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: bug020905 at stormkeepers dot com
New email:
PHP Version: OS:

 

 [2002-09-05 18:44 UTC] bug020905 at stormkeepers dot com
usort() does not seem to be actually sorting the
array.  The user-defined sort function is being
called, but no matter what the function does, the
array remains in its original order.

The "Example 1" cut-and-pasted from the usort()
function documentation page:

   function cmp ($a, $b) {
       if ($a == $b) return 0;
       return ($a > $b) ? -1 : 1;
   }

   $a = array (3, 2, 5, 6, 1);

   usort ($a, "cmp");

   while (list ($key, $value) = each ($a)) {
       echo "$key: $value\n";
   }

Produces the following output:
   0: 3
   1: 2
   2: 5
   3: 6
   4: 1

(Should have returned the values in descending
order, as on the usort() documentation page.)

The other examples do not work on this platform,
either; they always leave the array unmodified.

Configuration line reported by phpinfo():
'./configure' '--with-apache=../apache_1.3.26' '--with-gd=/
usr/local' '--with-png-dir=/usr/local' '--with-jpeg-dir=/
usr/local' '--with-zlib-dir=/usr/local' '--with-xml' '--
with-dom=/usr/local' '--with-dom-xslt=/usr/local' '--with-
dom-exslt=/usr/local' '--with-mysql' '--with-mm' '--enable-
discard-path' '--prefix=/usr/local/apache-1.3.26' '--
enable-memory-limit=yes' '--enable-debug=no' '--enable-
safe-mode'

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-09-06 05:25 UTC] sniper@php.net
Please try using this CVS snapshot:

  http://snaps.php.net/php4-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-latest.zip
 [2002-09-06 05:30 UTC] nohn@php.net
Works fine with me with PHP 4.2.3RC2. Seems to be a duplicate of Bug #17449.
 [2002-09-06 05:32 UTC] sniper@php.net
Closed then. Get the 4.2.3 when it's released..today/tomorrow iirc..

 [2002-11-15 10:37 UTC] nohn@php.net
Broken again in 4.3.0RC1:


================================================================================
/usr/users/nohn/php-4.3.0RC1/ext/standard/tests/array/002.phpt
================================================================================

---- EXPECTED OUTPUT
-- Testing arsort() -- 
No second argument:
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [2147483647]=>
  string(4) "test"
  [-2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [0]=>
  string(3) "PHP"
  [16777216]=>
  float(-0.33333333333333)
}
Using SORT_REGULAR:
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [2147483647]=>
  string(4) "test"
  [-2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [0]=>
  string(3) "PHP"
  [16777216]=>
  float(-0.33333333333333)
}
Using SORT_NUMERIC:
array(8) {
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [-2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [2147483647]=>
  string(4) "test"
  [16777216]=>
  float(-0.33333333333333)
}
Using SORT_STRING
array(8) {
  [2147483647]=>
  string(4) "test"
  [-2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [16777216]=>
  float(-0.33333333333333)
}

 -- Testing asort() -- 
No second argument:
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [-2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_REGULAR:
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [-2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_NUMERIC:
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  [-2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
}
Using SORT_STRING
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [-2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
}

 -- Testing krsort() -- 
No second argument:
array(8) {
  [2147483647]=>
  string(4) "test"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [-2147483648]=>
  string(6) "monkey"
}
Using SORT_REGULAR:
array(8) {
  [2147483647]=>
  string(4) "test"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [-2147483648]=>
  string(6) "monkey"
}
Using SORT_NUMERIC:
array(8) {
  [2147483647]=>
  string(4) "test"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [-2147483648]=>
  string(6) "monkey"
}
Using SORT_STRING
array(8) {
  ["test"]=>
  int(27)
  [5]=>
  string(4) "Test"
  [2147483647]=>
  string(4) "test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [16777216]=>
  float(-0.33333333333333)
  [0]=>
  string(3) "PHP"
  [-2147483648]=>
  string(6) "monkey"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}

 -- Testing ksort() -- 
No second argument:
array(8) {
  [-2147483648]=>
  string(6) "monkey"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  ["test"]=>
  int(27)
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [16777216]=>
  float(-0.33333333333333)
  [2147483647]=>
  string(4) "test"
}
Using SORT_REGULAR:
array(8) {
  [-2147483648]=>
  string(6) "monkey"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [16777216]=>
  float(-0.33333333333333)
  [2147483647]=>
  string(4) "test"
}
Using SORT_NUMERIC:
array(8) {
  [-2147483648]=>
  string(6) "monkey"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  ["test"]=>
  int(27)
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [16777216]=>
  float(-0.33333333333333)
  [2147483647]=>
  string(4) "test"
}
Using SORT_STRING
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [-2147483648]=>
  string(6) "monkey"
  [0]=>
  string(3) "PHP"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [2147483647]=>
  string(4) "test"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
}

 -- Testing rsort() -- 
No second argument:
array(8) {
  [0]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [1]=>
  int(27)
  [2]=>
  string(4) "test"
  [3]=>
  string(6) "monkey"
  [4]=>
  string(4) "Test"
  [5]=>
  string(27) "PHP: Hypertext Preprocessor"
  [6]=>
  string(3) "PHP"
  [7]=>
  float(-0.33333333333333)
}
Using SORT_REGULAR:
array(8) {
  [0]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [1]=>
  int(27)
  [2]=>
  string(4) "test"
  [3]=>
  string(6) "monkey"
  [4]=>
  string(4) "Test"
  [5]=>
  string(27) "PHP: Hypertext Preprocessor"
  [6]=>
  string(3) "PHP"
  [7]=>
  float(-0.33333333333333)
}
Using SORT_NUMERIC:
array(8) {
  [0]=>
  int(27)
  [1]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [2]=>
  string(3) "PHP"
  [3]=>
  string(27) "PHP: Hypertext Preprocessor"
  [4]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [6]=>
  string(4) "test"
  [7]=>
  float(-0.33333333333333)
}
Using SORT_STRING
array(8) {
  [0]=>
  string(4) "test"
  [1]=>
  string(6) "monkey"
  [2]=>
  string(4) "Test"
  [3]=>
  string(27) "PHP: Hypertext Preprocessor"
  [4]=>
  string(3) "PHP"
  [5]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [6]=>
  int(27)
  [7]=>
  float(-0.33333333333333)
}

 -- Testing sort() -- 
No second argument:
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  string(3) "PHP"
  [2]=>
  string(27) "PHP: Hypertext Preprocessor"
  [3]=>
  string(4) "Test"
  [4]=>
  string(6) "monkey"
  [5]=>
  string(4) "test"
  [6]=>
  int(27)
  [7]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_REGULAR:
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  string(3) "PHP"
  [2]=>
  string(27) "PHP: Hypertext Preprocessor"
  [3]=>
  string(4) "Test"
  [4]=>
  string(6) "monkey"
  [5]=>
  string(4) "test"
  [6]=>
  int(27)
  [7]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_NUMERIC:
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  string(6) "monkey"
  [2]=>
  string(4) "test"
  [3]=>
  string(4) "Test"
  [4]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(3) "PHP"
  [6]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [7]=>
  int(27)
}
Using SORT_STRING
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  int(27)
  [2]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [3]=>
  string(3) "PHP"
  [4]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [6]=>
  string(6) "monkey"
  [7]=>
  string(4) "test"
}
---- ACTUAL OUTPUT
-- Testing arsort() -- 
No second argument:
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [2147483647]=>
  string(4) "test"
  [2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [0]=>
  string(3) "PHP"
  [16777216]=>
  float(-0.33333333333333)
}
Using SORT_REGULAR:
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [2147483647]=>
  string(4) "test"
  [2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [0]=>
  string(3) "PHP"
  [16777216]=>
  float(-0.33333333333333)
}
Using SORT_NUMERIC:
array(8) {
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [2147483647]=>
  string(4) "test"
  [16777216]=>
  float(-0.33333333333333)
}
Using SORT_STRING
array(8) {
  [2147483647]=>
  string(4) "test"
  [2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [16777216]=>
  float(-0.33333333333333)
}

 -- Testing asort() -- 
No second argument:
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_REGULAR:
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_NUMERIC:
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
}
Using SORT_STRING
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
}

 -- Testing krsort() -- 
No second argument:
array(8) {
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_REGULAR:
array(8) {
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [0]=>
  string(3) "PHP"
  ["test"]=>
  int(27)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_NUMERIC:
array(8) {
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_STRING
array(8) {
  ["test"]=>
  int(27)
  [5]=>
  string(4) "Test"
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [16777216]=>
  float(-0.33333333333333)
  [0]=>
  string(3) "PHP"
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}

 -- Testing ksort() -- 
No second argument:
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  ["test"]=>
  int(27)
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [16777216]=>
  float(-0.33333333333333)
  [2147483647]=>
  string(4) "test"
  [2147483648]=>
  string(6) "monkey"
}
Using SORT_REGULAR:
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [16777216]=>
  float(-0.33333333333333)
  [2147483647]=>
  string(4) "test"
  [2147483648]=>
  string(6) "monkey"
}
Using SORT_NUMERIC:
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  ["test"]=>
  int(27)
  [5]=>
  string(4) "Test"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [16777216]=>
  float(-0.33333333333333)
  [2147483647]=>
  string(4) "test"
  [2147483648]=>
  string(6) "monkey"
}
Using SORT_STRING
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [2147483647]=>
  string(4) "test"
  [2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
}

 -- Testing rsort() -- 
No second argument:
array(8) {
  [0]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [1]=>
  int(27)
  [2]=>
  string(4) "test"
  [3]=>
  string(6) "monkey"
  [4]=>
  string(4) "Test"
  [5]=>
  string(27) "PHP: Hypertext Preprocessor"
  [6]=>
  string(3) "PHP"
  [7]=>
  float(-0.33333333333333)
}
Using SORT_REGULAR:
array(8) {
  [0]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [1]=>
  int(27)
  [2]=>
  string(4) "test"
  [3]=>
  string(6) "monkey"
  [4]=>
  string(4) "Test"
  [5]=>
  string(27) "PHP: Hypertext Preprocessor"
  [6]=>
  string(3) "PHP"
  [7]=>
  float(-0.33333333333333)
}
Using SORT_NUMERIC:
array(8) {
  [0]=>
  int(27)
  [1]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [2]=>
  string(3) "PHP"
  [3]=>
  string(27) "PHP: Hypertext Preprocessor"
  [4]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  [6]=>
  string(4) "test"
  [7]=>
  float(-0.33333333333333)
}
Using SORT_STRING
array(8) {
  [0]=>
  string(4) "test"
  [1]=>
  string(6) "monkey"
  [2]=>
  string(4) "Test"
  [3]=>
  string(27) "PHP: Hypertext Preprocessor"
  [4]=>
  string(3) "PHP"
  [5]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [6]=>
  int(27)
  [7]=>
  float(-0.33333333333333)
}

 -- Testing sort() -- 
No second argument:
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  string(3) "PHP"
  [2]=>
  string(27) "PHP: Hypertext Preprocessor"
  [3]=>
  string(4) "Test"
  [4]=>
  string(6) "monkey"
  [5]=>
  string(4) "test"
  [6]=>
  int(27)
  [7]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_REGULAR:
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  string(3) "PHP"
  [2]=>
  string(27) "PHP: Hypertext Preprocessor"
  [3]=>
  string(4) "Test"
  [4]=>
  string(6) "monkey"
  [5]=>
  string(4) "test"
  [6]=>
  int(27)
  [7]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
}
Using SORT_NUMERIC:
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  string(6) "monkey"
  [2]=>
  string(4) "test"
  [3]=>
  string(4) "Test"
  [4]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(3) "PHP"
  [6]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [7]=>
  int(27)
}
Using SORT_STRING
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  int(27)
  [2]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [3]=>
  string(3) "PHP"
  [4]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [6]=>
  string(6) "monkey"
  [7]=>
  string(4) "test"
}
---- FAILED

================================================================================
015-   [-2147483648]=>
015+   [2147483648]=>
039-   [-2147483648]=>
039+   [2147483648]=>
065-   [-2147483648]=>
065+   [2147483648]=>
078-   [-2147483648]=>
078+   [2147483648]=>
110-   [-2147483648]=>
110+   [2147483648]=>
134-   [-2147483648]=>
134+   [2147483648]=>
152-   [-2147483648]=>
152+   [2147483648]=>
191-   [-2147483648]=>
191+   [2147483648]=>
200-   [2147483647]=>
200+   [2147483648]=>
201-   string(4) "test"
201+   string(6) "monkey"
202-   [16777216]=>
202+   [2147483647]=>
203-   float(-0.33333333333333)
203+   string(4) "test"
204-   [17]=>
204+   [16777216]=>
205-   string(27) "PHP: Hypertext Preprocessor"
205+   float(-0.33333333333333)
206-   [5]=>
206+   [17]=>
207-   string(4) "Test"
207+   string(27) "PHP: Hypertext Preprocessor"
208-   ["test"]=>
208+   [5]=>
209-   int(27)
209+   string(4) "Test"
210-   [0]=>
210+   ["test"]=>
211-   string(3) "PHP"
211+   int(27)
212-   ["-2147483647"]=>
212+   [0]=>
213-   array(2) {
213+   string(3) "PHP"
214-     [0]=>
214+   ["-2147483647"]=>
215-     string(6) "banana"
215+   array(2) {
216-     [1]=>
216+     [0]=>
217-     string(6) "orange"
217+     string(6) "banana"
218-   }
218+     [1]=>
219-   [-2147483648]=>
219+     string(6) "orange"
220-   string(6) "monkey"
220+   }
224-   [2147483647]=>
224+   [2147483648]=>
225-   string(4) "test"
225+   string(6) "monkey"
226-   [16777216]=>
226+   [2147483647]=>
227-   float(-0.33333333333333)
227+   string(4) "test"
228-   [17]=>
228+   [16777216]=>
229-   string(27) "PHP: Hypertext Preprocessor"
229+   float(-0.33333333333333)
230-   [5]=>
230+   [17]=>
231-   string(4) "Test"
231+   string(27) "PHP: Hypertext Preprocessor"
232-   ["test"]=>
232+   [5]=>
233-   int(27)
233+   string(4) "Test"
236-   ["-2147483647"]=>
236+   ["test"]=>
237-   array(2) {
237+   int(27)
238-     [0]=>
238+   ["-2147483647"]=>
239-     string(6) "banana"
239+   array(2) {
240-     [1]=>
240+     [0]=>
241-     string(6) "orange"
241+     string(6) "banana"
242-   }
242+     [1]=>
243-   [-2147483648]=>
243+     string(6) "orange"
244-   string(6) "monkey"
244+   }
248-   [2147483647]=>
248+   [2147483648]=>
249-   string(4) "test"
249+   string(6) "monkey"
250-   [16777216]=>
250+   [2147483647]=>
251-   float(-0.33333333333333)
251+   string(4) "test"
252-   [17]=>
252+   [16777216]=>
253-   string(27) "PHP: Hypertext Preprocessor"
253+   float(-0.33333333333333)
254-   [5]=>
254+   [17]=>
255-   string(4) "Test"
255+   string(27) "PHP: Hypertext Preprocessor"
256-   ["test"]=>
256+   [5]=>
257-   int(27)
257+   string(4) "Test"
258-   [0]=>
258+   ["test"]=>
259-   string(3) "PHP"
259+   int(27)
260-   ["-2147483647"]=>
260+   [0]=>
261-   array(2) {
261+   string(3) "PHP"
262-     [0]=>
262+   ["-2147483647"]=>
263-     string(6) "banana"
263+   array(2) {
264-     [1]=>
264+     [0]=>
265-     string(6) "orange"
265+     string(6) "banana"
266-   }
266+     [1]=>
267-   [-2147483648]=>
267+     string(6) "orange"
268-   string(6) "monkey"
268+   }
276-   [2147483647]=>
276+   [2147483648]=>
277-   string(4) "test"
277+   string(6) "monkey"
278-   [17]=>
278+   [2147483647]=>
279-   string(27) "PHP: Hypertext Preprocessor"
279+   string(4) "test"
280-   [16777216]=>
280+   [17]=>
281-   float(-0.33333333333333)
281+   string(27) "PHP: Hypertext Preprocessor"
282-   [0]=>
282+   [16777216]=>
283-   string(3) "PHP"
283+   float(-0.33333333333333)
284-   [-2147483648]=>
284+   [0]=>
285-   string(6) "monkey"
285+   string(3) "PHP"
298-   [-2147483648]=>
298+   ["-2147483647"]=>
299-   string(6) "monkey"
299+   array(2) {
300-   ["-2147483647"]=>
300+     [0]=>
301-   array(2) {
301+     string(6) "banana"
302-     [0]=>
302+     [1]=>
303-     string(6) "banana"
303+     string(6) "orange"
304-     [1]=>
304+   }
305-     string(6) "orange"
305+   [0]=>
306-   }
306+   string(3) "PHP"
307-   [0]=>
307+   ["test"]=>
308-   string(3) "PHP"
308+   int(27)
309-   ["test"]=>
309+   [5]=>
310-   int(27)
310+   string(4) "Test"
311-   [5]=>
311+   [17]=>
312-   string(4) "Test"
312+   string(27) "PHP: Hypertext Preprocessor"
313-   [17]=>
313+   [16777216]=>
314-   string(27) "PHP: Hypertext Preprocessor"
314+   float(-0.33333333333333)
315-   [16777216]=>
315+   [2147483647]=>
316-   float(-0.33333333333333)
316+   string(4) "test"
317-   [2147483647]=>
317+   [2147483648]=>
318-   string(4) "test"
318+   string(6) "monkey"
322-   [-2147483648]=>
322+   ["-2147483647"]=>
323-   string(6) "monkey"
323+   array(2) {
324-   ["-2147483647"]=>
324+     [0]=>
325-   array(2) {
325+     string(6) "banana"
326-     [0]=>
326+     [1]=>
327-     string(6) "banana"
327+     string(6) "orange"
328-     [1]=>
328+   }
329-     string(6) "orange"
329+   ["test"]=>
330-   }
330+   int(27)
331-   ["test"]=>
331+   [0]=>
332-   int(27)
332+   string(3) "PHP"
333-   [0]=>
333+   [5]=>
334-   string(3) "PHP"
334+   string(4) "Test"
335-   [5]=>
335+   [17]=>
336-   string(4) "Test"
336+   string(27) "PHP: Hypertext Preprocessor"
337-   [17]=>
337+   [16777216]=>
338-   string(27) "PHP: Hypertext Preprocessor"
338+   float(-0.33333333333333)
339-   [16777216]=>
339+   [2147483647]=>
340-   float(-0.33333333333333)
340+   string(4) "test"
341-   [2147483647]=>
341+   [2147483648]=>
342-   string(4) "test"
342+   string(6) "monkey"
346-   [-2147483648]=>
346+   ["-2147483647"]=>
347-   string(6) "monkey"
347+   array(2) {
348-   ["-2147483647"]=>
348+     [0]=>
349-   array(2) {
349+     string(6) "banana"
350-     [0]=>
350+     [1]=>
351-     string(6) "banana"
351+     string(6) "orange"
352-     [1]=>
352+   }
353-     string(6) "orange"
353+   [0]=>
354-   }
354+   string(3) "PHP"
355-   [0]=>
355+   ["test"]=>
356-   string(3) "PHP"
356+   int(27)
357-   ["test"]=>
357+   [5]=>
358-   int(27)
358+   string(4) "Test"
359-   [5]=>
359+   [17]=>
360-   string(4) "Test"
360+   string(27) "PHP: Hypertext Preprocessor"
361-   [17]=>
361+   [16777216]=>
362-   string(27) "PHP: Hypertext Preprocessor"
362+   float(-0.33333333333333)
363-   [16777216]=>
363+   [2147483647]=>
364-   float(-0.33333333333333)
364+   string(4) "test"
365-   [2147483647]=>
365+   [2147483648]=>
366-   string(4) "test"
366+   string(6) "monkey"
377-   [-2147483648]=>
377+   [0]=>
378-   string(6) "monkey"
378+   string(3) "PHP"
379-   [0]=>
379+   [16777216]=>
380-   string(3) "PHP"
380+   float(-0.33333333333333)
381-   [16777216]=>
381+   [17]=>
382-   float(-0.33333333333333)
382+   string(27) "PHP: Hypertext Preprocessor"
383-   [17]=>
383+   [2147483647]=>
384-   string(27) "PHP: Hypertext Preprocessor"
384+   string(4) "test"
385-   [2147483647]=>
385+   [2147483648]=>
386-   string(4) "test"
386+   string(6) "monkey"
================================================================================



================================================================================
/usr/users/nohn/php-4.3.0RC1/ext/standard/tests/array/003.phpt
================================================================================

---- EXPECTED OUTPUT
-- Testing uasort() -- 
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [-2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
}

 -- Testing uksort() -- 
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [-2147483648]=>
  string(6) "monkey"
  [0]=>
  string(3) "PHP"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [2147483647]=>
  string(4) "test"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
}

 -- Testing usort() -- 
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [2]=>
  int(27)
  [3]=>
  string(3) "PHP"
  [4]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [6]=>
  string(6) "monkey"
  [7]=>
  string(4) "test"
}
---- ACTUAL OUTPUT
-- Testing uasort() -- 
array(8) {
  [16777216]=>
  float(-0.33333333333333)
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  ["test"]=>
  int(27)
  [0]=>
  string(3) "PHP"
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [2147483648]=>
  string(6) "monkey"
  [2147483647]=>
  string(4) "test"
}

 -- Testing uksort() -- 
array(8) {
  ["-2147483647"]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [0]=>
  string(3) "PHP"
  [16777216]=>
  float(-0.33333333333333)
  [17]=>
  string(27) "PHP: Hypertext Preprocessor"
  [2147483647]=>
  string(4) "test"
  [2147483648]=>
  string(6) "monkey"
  [5]=>
  string(4) "Test"
  ["test"]=>
  int(27)
}

 -- Testing usort() -- 
array(8) {
  [0]=>
  float(-0.33333333333333)
  [1]=>
  array(2) {
    [0]=>
    string(6) "banana"
    [1]=>
    string(6) "orange"
  }
  [2]=>
  int(27)
  [3]=>
  string(3) "PHP"
  [4]=>
  string(27) "PHP: Hypertext Preprocessor"
  [5]=>
  string(4) "Test"
  [6]=>
  string(6) "monkey"
  [7]=>
  string(4) "test"
}
---- FAILED

================================================================================
020-   [-2147483648]=>
020+   [2147483648]=>
035-   [-2147483648]=>
035+   [0]=>
036-   string(6) "monkey"
036+   string(3) "PHP"
037-   [0]=>
037+   [16777216]=>
038-   string(3) "PHP"
038+   float(-0.33333333333333)
039-   [16777216]=>
039+   [17]=>
040-   float(-0.33333333333333)
040+   string(27) "PHP: Hypertext Preprocessor"
041-   [17]=>
041+   [2147483647]=>
042-   string(27) "PHP: Hypertext Preprocessor"
042+   string(4) "test"
043-   [2147483647]=>
043+   [2147483648]=>
044-   string(4) "test"
044+   string(6) "monkey"
================================================================================
 [2002-11-16 09:47 UTC] nohn@php.net
Closed. The testcases were wrong, not the function itself.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Jun 01 10:01:30 2024 UTC