1--TEST-- 2Test array_change_key_case() function : usage variations - Different strings as keys 3--FILE-- 4<?php 5/* Prototype : array array_change_key_case(array $input [, int $case]) 6 * Description: Retuns an array with all string keys lowercased [or uppercased] 7 * Source code: ext/standard/array.c 8 */ 9 10/* 11 * Test how array_change_key_case() behaves with different strings 12 */ 13 14echo "*** Testing array_change_key_case() : usage variations ***\n"; 15 16$inputs = array ( 17 // group of escape sequences 18 array(null => 1, NULL => 2, "\a" => 3, "\cx" => 4, "\e" => 5, "\f" => 6, "\n" => 7, "\t" => 8, "\xhh" => 9, "\ddd" => 10, "\v" => 11), 19 20 // array contains combination of capital/small letters 21 array("lemoN" => 1, "Orange" => 2, "banana" => 3, "apple" => 4, "Test" => 5, "TTTT" => 6, "ttt" => 7, "ww" => 8, "x" => 9, "X" => 10, "oraNGe" => 11, "BANANA" => 12) 22); 23 24foreach($inputs as $input) { 25 echo "\n-- \$case = default --\n"; 26 var_dump(array_change_key_case($input)); 27 echo "-- \$case = upper --\n"; 28 var_dump(array_change_key_case($input, CASE_UPPER)); 29} 30 31echo "Done"; 32?> 33--EXPECT-- 34*** Testing array_change_key_case() : usage variations *** 35 36-- $case = default -- 37array(10) { 38 [""]=> 39 int(2) 40 ["\a"]=> 41 int(3) 42 ["\cx"]=> 43 int(4) 44 [""]=> 45 int(5) 46 [""]=> 47 int(6) 48 [" 49"]=> 50 int(7) 51 [" "]=> 52 int(8) 53 ["\xhh"]=> 54 int(9) 55 ["\ddd"]=> 56 int(10) 57 [""]=> 58 int(11) 59} 60-- $case = upper -- 61array(10) { 62 [""]=> 63 int(2) 64 ["\A"]=> 65 int(3) 66 ["\CX"]=> 67 int(4) 68 [""]=> 69 int(5) 70 [""]=> 71 int(6) 72 [" 73"]=> 74 int(7) 75 [" "]=> 76 int(8) 77 ["\XHH"]=> 78 int(9) 79 ["\DDD"]=> 80 int(10) 81 [""]=> 82 int(11) 83} 84 85-- $case = default -- 86array(9) { 87 ["lemon"]=> 88 int(1) 89 ["orange"]=> 90 int(11) 91 ["banana"]=> 92 int(12) 93 ["apple"]=> 94 int(4) 95 ["test"]=> 96 int(5) 97 ["tttt"]=> 98 int(6) 99 ["ttt"]=> 100 int(7) 101 ["ww"]=> 102 int(8) 103 ["x"]=> 104 int(10) 105} 106-- $case = upper -- 107array(9) { 108 ["LEMON"]=> 109 int(1) 110 ["ORANGE"]=> 111 int(11) 112 ["BANANA"]=> 113 int(12) 114 ["APPLE"]=> 115 int(4) 116 ["TEST"]=> 117 int(5) 118 ["TTTT"]=> 119 int(6) 120 ["TTT"]=> 121 int(7) 122 ["WW"]=> 123 int(8) 124 ["X"]=> 125 int(10) 126} 127Done 128