2007-11-12 15:49:29 +00:00
|
|
|
|
--TEST--
|
|
|
|
|
Test ksort() function : usage variations - sort mixed values, 'sort_flags' as default/SORT_REGULAR (OK to fail as result is unpredectable)
|
|
|
|
|
--FILE--
|
|
|
|
|
<?php
|
|
|
|
|
/* Prototype : bool ksort ( array &$array [, int $sort_flags] )
|
|
|
|
|
* Description: Sort an array by key, maintaining key to data correlation.
|
|
|
|
|
* Source code: ext/standard/array.c
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* testing ksort() by providing array of mixed values for $array argument with following flag values:
|
2008-05-26 23:36:10 +00:00
|
|
|
|
* 1.flag value as default
|
2007-11-12 15:49:29 +00:00
|
|
|
|
* 2.SORT_REGULAR - compare items normally
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
echo "*** Testing ksort() : usage variations ***\n";
|
|
|
|
|
|
|
|
|
|
// mixed value array with different key values
|
|
|
|
|
$mixed_values = array (
|
|
|
|
|
"array1" => array(),
|
|
|
|
|
"array2" => array ( "sub_array[2,1]" => array(33,-5,6), "sub_array[2,2]" => array(11),
|
|
|
|
|
"sub_array[2,3]" => array(22,-55), "sub_array[2,4]" => array()
|
|
|
|
|
),
|
|
|
|
|
4 => 4, "4" => "4", 4.01 => 4.01, "b" => "b", "5" => "5", -2 => -2, -2.01 => -2.01,
|
|
|
|
|
-2.98989 => -2.98989, "-.9" => "-.9", "True" => "True", "" => "", NULL => NULL,
|
|
|
|
|
"ab" => "ab", "abcd" => "abcd", 0.01 => 0.01, -0 => -0, '' => '' ,
|
|
|
|
|
"abcd\x00abcd\x00abcd" => "abcd\x00abcd\x00abcd", 0.001 => 0.001
|
|
|
|
|
);
|
|
|
|
|
|
2008-05-26 23:36:10 +00:00
|
|
|
|
echo "\n-- Testing ksort() by supplying mixed value array, 'flag' value is default --\n";
|
2007-11-12 15:49:29 +00:00
|
|
|
|
$temp_array = $mixed_values;
|
|
|
|
|
var_dump( ksort($temp_array) );
|
|
|
|
|
var_dump($temp_array);
|
|
|
|
|
|
|
|
|
|
echo "\n-- Testing ksort() by supplying mixed value array, 'flag' value is SORT_REGULAR --\n";
|
|
|
|
|
$temp_array = $mixed_values;
|
|
|
|
|
var_dump( ksort($temp_array, SORT_REGULAR) );
|
|
|
|
|
var_dump($temp_array);
|
|
|
|
|
|
|
|
|
|
echo "Done\n";
|
|
|
|
|
?>
|
2008-05-26 23:36:10 +00:00
|
|
|
|
--EXPECT--
|
2007-11-12 15:49:29 +00:00
|
|
|
|
*** Testing ksort() : usage variations ***
|
|
|
|
|
|
2008-05-26 23:36:10 +00:00
|
|
|
|
-- Testing ksort() by supplying mixed value array, 'flag' value is default --
|
2007-11-12 15:49:29 +00:00
|
|
|
|
bool(true)
|
|
|
|
|
array(13) {
|
|
|
|
|
[-2]=>
|
|
|
|
|
float(-2.98989)
|
|
|
|
|
[u""]=>
|
|
|
|
|
unicode(0) ""
|
|
|
|
|
[u"-.9"]=>
|
|
|
|
|
unicode(3) "-.9"
|
|
|
|
|
[0]=>
|
|
|
|
|
float(0.001)
|
|
|
|
|
[u"True"]=>
|
|
|
|
|
unicode(4) "True"
|
|
|
|
|
[u"ab"]=>
|
|
|
|
|
unicode(2) "ab"
|
|
|
|
|
[u"abcd"]=>
|
|
|
|
|
unicode(4) "abcd"
|
|
|
|
|
[u"abcd |