Annotation of embedaddon/php/ext/standard/tests/array/arsort_variation9.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Test arsort() function : usage variations - sorting arrays with/without keys, 'sort_flags' as default/SORT_REGULAR  
        !             3: --FILE--
        !             4: <?php
        !             5: /* Prototype  : bool arsort ( array &$array [, int $sort_flags] )
        !             6:  * Description: Sort an array and maintain index association. 
        !             7:                 Elements will be arranged from highest to lowest when this function has completed.
        !             8:  * Source code: ext/standard/array.c
        !             9: */
        !            10: 
        !            11: /*
        !            12:  * Testing arsort() by providing arrays  with key values for $array argument with following flag values.
        !            13:  * 1.flag value as default
        !            14:  * 2.SORT_REGULAR - compare items normally
        !            15:  */
        !            16: 
        !            17: echo "*** Testing arsort() : usage variations ***\n";
        !            18: 
        !            19: // list of arrays with/without key values
        !            20: $various_arrays = array (
        !            21:   array(5 => 55,  66, 22, 33, 11),
        !            22:   array ("a" => "orange",  "banana", "c" => "apple"),
        !            23:   array(1, 2, 3, 4, 5, 6),
        !            24:   array("first", 5 => "second", "third"),
        !            25:   array(1, 1, 8 => 1,  4 => 1, 19, 3 => 13),
        !            26:   array('bar' => 'baz', "foo" => 1),
        !            27:   array('a'=>1,'b'=>array('e'=>2,'f'=>3),'c'=>array('g'=>4),'d'=>5),
        !            28: );
        !            29: 
        !            30: $count = 1;
        !            31: echo "\n-- Testing arsort() by supplying various arrays with key values --\n";
        !            32: 
        !            33: // loop through to test arsort() with different arrays, 
        !            34: // to test the new keys for the elements in the sorted array 
        !            35: foreach ($various_arrays as $array) {
        !            36:   echo "\n-- Iteration $count --\n";
        !            37: 
        !            38:   echo "- With default sort_flag -\n";
        !            39:   $temp_array = $array;
        !            40:   var_dump(arsort($temp_array) );
        !            41:   var_dump($temp_array);
        !            42: 
        !            43:   echo "- Sort_flag = SORT_REGULAR -\n";
        !            44:   $temp_array = $array;
        !            45:   var_dump(arsort($temp_array, SORT_REGULAR) );
        !            46:   var_dump($temp_array);
        !            47:   $count++;
        !            48: }
        !            49: 
        !            50: echo "Done\n";
        !            51: ?>
        !            52: --EXPECTF--
        !            53: *** Testing arsort() : usage variations ***
        !            54: 
        !            55: -- Testing arsort() by supplying various arrays with key values --
        !            56: 
        !            57: -- Iteration 1 --
        !            58: - With default sort_flag -
        !            59: bool(true)
        !            60: array(5) {
        !            61:   [6]=>
        !            62:   int(66)
        !            63:   [5]=>
        !            64:   int(55)
        !            65:   [8]=>
        !            66:   int(33)
        !            67:   [7]=>
        !            68:   int(22)
        !            69:   [9]=>
        !            70:   int(11)
        !            71: }
        !            72: - Sort_flag = SORT_REGULAR -
        !            73: bool(true)
        !            74: array(5) {
        !            75:   [6]=>
        !            76:   int(66)
        !            77:   [5]=>
        !            78:   int(55)
        !            79:   [8]=>
        !            80:   int(33)
        !            81:   [7]=>
        !            82:   int(22)
        !            83:   [9]=>
        !            84:   int(11)
        !            85: }
        !            86: 
        !            87: -- Iteration 2 --
        !            88: - With default sort_flag -
        !            89: bool(true)
        !            90: array(3) {
        !            91:   ["a"]=>
        !            92:   string(6) "orange"
        !            93:   [0]=>
        !            94:   string(6) "banana"
        !            95:   ["c"]=>
        !            96:   string(5) "apple"
        !            97: }
        !            98: - Sort_flag = SORT_REGULAR -
        !            99: bool(true)
        !           100: array(3) {
        !           101:   ["a"]=>
        !           102:   string(6) "orange"
        !           103:   [0]=>
        !           104:   string(6) "banana"
        !           105:   ["c"]=>
        !           106:   string(5) "apple"
        !           107: }
        !           108: 
        !           109: -- Iteration 3 --
        !           110: - With default sort_flag -
        !           111: bool(true)
        !           112: array(6) {
        !           113:   [5]=>
        !           114:   int(6)
        !           115:   [4]=>
        !           116:   int(5)
        !           117:   [3]=>
        !           118:   int(4)
        !           119:   [2]=>
        !           120:   int(3)
        !           121:   [1]=>
        !           122:   int(2)
        !           123:   [0]=>
        !           124:   int(1)
        !           125: }
        !           126: - Sort_flag = SORT_REGULAR -
        !           127: bool(true)
        !           128: array(6) {
        !           129:   [5]=>
        !           130:   int(6)
        !           131:   [4]=>
        !           132:   int(5)
        !           133:   [3]=>
        !           134:   int(4)
        !           135:   [2]=>
        !           136:   int(3)
        !           137:   [1]=>
        !           138:   int(2)
        !           139:   [0]=>
        !           140:   int(1)
        !           141: }
        !           142: 
        !           143: -- Iteration 4 --
        !           144: - With default sort_flag -
        !           145: bool(true)
        !           146: array(3) {
        !           147:   [6]=>
        !           148:   string(5) "third"
        !           149:   [5]=>
        !           150:   string(6) "second"
        !           151:   [0]=>
        !           152:   string(5) "first"
        !           153: }
        !           154: - Sort_flag = SORT_REGULAR -
        !           155: bool(true)
        !           156: array(3) {
        !           157:   [6]=>
        !           158:   string(5) "third"
        !           159:   [5]=>
        !           160:   string(6) "second"
        !           161:   [0]=>
        !           162:   string(5) "first"
        !           163: }
        !           164: 
        !           165: -- Iteration 5 --
        !           166: - With default sort_flag -
        !           167: bool(true)
        !           168: array(6) {
        !           169:   [9]=>
        !           170:   int(19)
        !           171:   [3]=>
        !           172:   int(13)
        !           173:   [4]=>
        !           174:   int(1)
        !           175:   [8]=>
        !           176:   int(1)
        !           177:   [1]=>
        !           178:   int(1)
        !           179:   [0]=>
        !           180:   int(1)
        !           181: }
        !           182: - Sort_flag = SORT_REGULAR -
        !           183: bool(true)
        !           184: array(6) {
        !           185:   [9]=>
        !           186:   int(19)
        !           187:   [3]=>
        !           188:   int(13)
        !           189:   [4]=>
        !           190:   int(1)
        !           191:   [8]=>
        !           192:   int(1)
        !           193:   [1]=>
        !           194:   int(1)
        !           195:   [0]=>
        !           196:   int(1)
        !           197: }
        !           198: 
        !           199: -- Iteration 6 --
        !           200: - With default sort_flag -
        !           201: bool(true)
        !           202: array(2) {
        !           203:   ["foo"]=>
        !           204:   int(1)
        !           205:   ["bar"]=>
        !           206:   string(3) "baz"
        !           207: }
        !           208: - Sort_flag = SORT_REGULAR -
        !           209: bool(true)
        !           210: array(2) {
        !           211:   ["foo"]=>
        !           212:   int(1)
        !           213:   ["bar"]=>
        !           214:   string(3) "baz"
        !           215: }
        !           216: 
        !           217: -- Iteration 7 --
        !           218: - With default sort_flag -
        !           219: bool(true)
        !           220: array(4) {
        !           221:   ["b"]=>
        !           222:   array(2) {
        !           223:     ["e"]=>
        !           224:     int(2)
        !           225:     ["f"]=>
        !           226:     int(3)
        !           227:   }
        !           228:   ["c"]=>
        !           229:   array(1) {
        !           230:     ["g"]=>
        !           231:     int(4)
        !           232:   }
        !           233:   ["d"]=>
        !           234:   int(5)
        !           235:   ["a"]=>
        !           236:   int(1)
        !           237: }
        !           238: - Sort_flag = SORT_REGULAR -
        !           239: bool(true)
        !           240: array(4) {
        !           241:   ["b"]=>
        !           242:   array(2) {
        !           243:     ["e"]=>
        !           244:     int(2)
        !           245:     ["f"]=>
        !           246:     int(3)
        !           247:   }
        !           248:   ["c"]=>
        !           249:   array(1) {
        !           250:     ["g"]=>
        !           251:     int(4)
        !           252:   }
        !           253:   ["d"]=>
        !           254:   int(5)
        !           255:   ["a"]=>
        !           256:   int(1)
        !           257: }
        !           258: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>