Annotation of embedaddon/php/ext/standard/tests/array/asort_variation6.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test asort() function : usage variations - sort hexadecimal values 
                      3: --FILE--
                      4: <?php
                      5: /* Prototype  : bool asort ( array &$array [, int $asort_flags] )
                      6:  * Description: Sort an array and maintain index association. 
                      7:                 Elements will be arranged from lowest to highest when this function has completed.
                      8:  * Source code: ext/standard/array.c
                      9: */
                     10: 
                     11: /*
                     12:  * testing asort() by providing different hexa-decimal array for $array argument with following flag values
                     13:  * flag value as defualt
                     14:  * SORT_REGULAR - compare items normally
                     15:  * SORT_NUMERIC - compare items numerically
                     16: */
                     17: 
                     18: echo "*** Testing asort() : usage variations ***\n";
                     19: 
                     20: // an array contains unsorted hexadecimal values  
                     21: // There are multiple keys which are duplicate and the later should be picked
                     22: $unsorted_hex_array = array ( 0x1AB => 0x1AB, 0xFFF => 0xFFF, 0xF => 0xF, 0xFF => 0xFF, 0x2AA => 0x2AA, 0xBB => 0xBB,
                     23:                               0x1ab => 0x1ab, 0xff => 0xff, -0xff => -0xFF, 0 => 0, -0x2aa => -0x2aa
                     24:                             );
                     25: 
                     26: echo "\n-- Testing asort() by supplying hexadecimal value array, 'flag' value is defualt  --\n";
                     27: $temp_array = $unsorted_hex_array;
                     28: var_dump(asort($temp_array) ); // expecting : bool(true)
                     29: var_dump($temp_array);
                     30: 
                     31: echo "\n-- Testing asort() by supplying hexadecimal value array, 'flag' value is SORT_REGULAR  --\n";
                     32: $temp_array = $unsorted_hex_array;
                     33: var_dump(asort($temp_array, SORT_REGULAR) ); // expecting : bool(true)
                     34: var_dump($temp_array);
                     35: 
                     36: echo "\n-- Testing asort() by supplying hexadecimal value array, 'flag' value is SORT_NUMERIC  --\n";
                     37: $temp_array = $unsorted_hex_array;
                     38: var_dump(asort($temp_array, SORT_NUMERIC) ); // expecting : bool(true)
                     39: var_dump($temp_array);
                     40: 
                     41: echo "Done\n";
                     42: ?>
                     43: --EXPECTF--
                     44: *** Testing asort() : usage variations ***
                     45: 
                     46: -- Testing asort() by supplying hexadecimal value array, 'flag' value is defualt  --
                     47: bool(true)
                     48: array(9) {
                     49:   [-682]=>
                     50:   int(-682)
                     51:   [-255]=>
                     52:   int(-255)
                     53:   [0]=>
                     54:   int(0)
                     55:   [15]=>
                     56:   int(15)
                     57:   [187]=>
                     58:   int(187)
                     59:   [255]=>
                     60:   int(255)
                     61:   [427]=>
                     62:   int(427)
                     63:   [682]=>
                     64:   int(682)
                     65:   [4095]=>
                     66:   int(4095)
                     67: }
                     68: 
                     69: -- Testing asort() by supplying hexadecimal value array, 'flag' value is SORT_REGULAR  --
                     70: bool(true)
                     71: array(9) {
                     72:   [-682]=>
                     73:   int(-682)
                     74:   [-255]=>
                     75:   int(-255)
                     76:   [0]=>
                     77:   int(0)
                     78:   [15]=>
                     79:   int(15)
                     80:   [187]=>
                     81:   int(187)
                     82:   [255]=>
                     83:   int(255)
                     84:   [427]=>
                     85:   int(427)
                     86:   [682]=>
                     87:   int(682)
                     88:   [4095]=>
                     89:   int(4095)
                     90: }
                     91: 
                     92: -- Testing asort() by supplying hexadecimal value array, 'flag' value is SORT_NUMERIC  --
                     93: bool(true)
                     94: array(9) {
                     95:   [-682]=>
                     96:   int(-682)
                     97:   [-255]=>
                     98:   int(-255)
                     99:   [0]=>
                    100:   int(0)
                    101:   [15]=>
                    102:   int(15)
                    103:   [187]=>
                    104:   int(187)
                    105:   [255]=>
                    106:   int(255)
                    107:   [427]=>
                    108:   int(427)
                    109:   [682]=>
                    110:   int(682)
                    111:   [4095]=>
                    112:   int(4095)
                    113: }
                    114: Done

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