Annotation of embedaddon/php/ext/standard/tests/array/array_diff_key.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test of the array_diff_key() and array_diff_ukey()
! 3: --FILE--
! 4: <?php
! 5: $a = array(1, 6, 2, -20, 15, 1200, -2500);
! 6: $b = array(0, 7, 2, -20, 11, 1100, -2500);
! 7: $c = array(0, 6, 2, -20, 19, 1000, -2500);
! 8: $d = array(3, 8,-2, -20, 14, 900, -2600);
! 9: $a_f = array_flip($a);
! 10: $b_f = array_flip($b);
! 11: $c_f = array_flip($c);
! 12: $d_f = array_flip($d);
! 13: $i = 1;
! 14: /* give nicer values */
! 15: foreach ($a_f as $k=> &$a_f_el) { $a_f_el =$k*2;}
! 16: foreach ($b_f as $k=> &$b_f_el) { $b_f_el =$k*2;}
! 17: foreach ($c_f as $k=> &$c_f_el) { $c_f_el =$k*2;}
! 18: foreach ($d_f as $k=> &$d_f_el) { $d_f_el =$k*2;}
! 19:
! 20: echo "------ Test $i --------\n";$i++;// 1
! 21: var_dump(array_diff_key($a_f, $b_f));// keys -> 1, 6, 15, 1200
! 22: var_dump(array_diff_ukey($a_f, $b_f, "comp_func"));// 1, 6, 15, 1200
! 23:
! 24: echo "------ Test $i --------\n";$i++;// 2
! 25: var_dump(array_diff_key($a_f, $c_f));// keys -> 1, 15, 1200
! 26: var_dump(array_diff_ukey($a_f, $c_f, "comp_func"));// 1, 15, 1200
! 27:
! 28: echo "------ Test $i --------\n";$i++;// 3
! 29: var_dump(array_diff_key($a_f, $d_f));// 1, 6, 2, 15, 1200, -2500
! 30: var_dump(array_diff_ukey($a_f, $d_f, "comp_func"));// 1, 6, 2, 15, 1200, -2500
! 31:
! 32: echo "------ Test $i --------\n";$i++;// 4
! 33: var_dump(array_diff_key($a_f, $b_f, $c_f));// 1, 15, 1200
! 34: var_dump(array_diff_ukey($a_f, $b_f, $c_f, "comp_func"));// 1, 15, 1200
! 35:
! 36: echo "------ Test $i --------\n";$i++;// 5
! 37: var_dump(array_diff_key($a_f, $b_f, $d_f));// 1, 6, 15, 1200
! 38: var_dump(array_diff_ukey($a_f, $b_f, $d_f, "comp_func"));// 1, 6, 15, 1200
! 39:
! 40:
! 41: echo "------ Test $i --------\n";$i++;// 6
! 42: var_dump(array_diff_key($a_f, $b_f, $c_f, $d_f));// 1, 15, 1200
! 43: var_dump(array_diff_ukey($a_f, $b_f, $c_f, $d_f, "comp_func"));//1, 15, 1200
! 44:
! 45:
! 46: echo "------ Test $i --------\n";$i++;// 7
! 47: var_dump(array_diff_key($b_f, $c_f));// 7, 11, 1100
! 48: var_dump(array_diff_ukey($b_f, $c_f, "comp_func"));//7, 11, 1100
! 49:
! 50: echo "------ Test $i --------\n";$i++;// 8
! 51: var_dump(array_diff_key($b_f, $d_f));//0, 7, 2, 11, 1100, -2500
! 52: var_dump(array_diff_ukey($b_f, $d_f, "comp_func"));//0, 7, 2, 11, 1100, -2500
! 53:
! 54:
! 55: echo "------ Test $i --------\n";$i++;// 9
! 56: var_dump(array_diff_key($b_f, $c_f, $d_f));// 7, 11, 1100
! 57: var_dump(array_diff_ukey($b_f, $c_f, $d_f, "comp_func"));// 7, 11, 1000
! 58:
! 59: function comp_func($a, $b) {
! 60: if ($a === $b) return 0;
! 61: return ($a > $b)? 1:-1;
! 62:
! 63: }
! 64: ?>
! 65: --EXPECTF--
! 66: ------ Test 1 --------
! 67: array(4) {
! 68: [1]=>
! 69: int(2)
! 70: [6]=>
! 71: int(12)
! 72: [15]=>
! 73: int(30)
! 74: [1200]=>
! 75: int(2400)
! 76: }
! 77: array(4) {
! 78: [1]=>
! 79: int(2)
! 80: [6]=>
! 81: int(12)
! 82: [15]=>
! 83: int(30)
! 84: [1200]=>
! 85: int(2400)
! 86: }
! 87: ------ Test 2 --------
! 88: array(3) {
! 89: [1]=>
! 90: int(2)
! 91: [15]=>
! 92: int(30)
! 93: [1200]=>
! 94: int(2400)
! 95: }
! 96: array(3) {
! 97: [1]=>
! 98: int(2)
! 99: [15]=>
! 100: int(30)
! 101: [1200]=>
! 102: int(2400)
! 103: }
! 104: ------ Test 3 --------
! 105: array(6) {
! 106: [1]=>
! 107: int(2)
! 108: [6]=>
! 109: int(12)
! 110: [2]=>
! 111: int(4)
! 112: [15]=>
! 113: int(30)
! 114: [1200]=>
! 115: int(2400)
! 116: [-2500]=>
! 117: &int(-5000)
! 118: }
! 119: array(6) {
! 120: [1]=>
! 121: int(2)
! 122: [6]=>
! 123: int(12)
! 124: [2]=>
! 125: int(4)
! 126: [15]=>
! 127: int(30)
! 128: [1200]=>
! 129: int(2400)
! 130: [-2500]=>
! 131: &int(-5000)
! 132: }
! 133: ------ Test 4 --------
! 134: array(3) {
! 135: [1]=>
! 136: int(2)
! 137: [15]=>
! 138: int(30)
! 139: [1200]=>
! 140: int(2400)
! 141: }
! 142: array(3) {
! 143: [1]=>
! 144: int(2)
! 145: [15]=>
! 146: int(30)
! 147: [1200]=>
! 148: int(2400)
! 149: }
! 150: ------ Test 5 --------
! 151: array(4) {
! 152: [1]=>
! 153: int(2)
! 154: [6]=>
! 155: int(12)
! 156: [15]=>
! 157: int(30)
! 158: [1200]=>
! 159: int(2400)
! 160: }
! 161: array(4) {
! 162: [1]=>
! 163: int(2)
! 164: [6]=>
! 165: int(12)
! 166: [15]=>
! 167: int(30)
! 168: [1200]=>
! 169: int(2400)
! 170: }
! 171: ------ Test 6 --------
! 172: array(3) {
! 173: [1]=>
! 174: int(2)
! 175: [15]=>
! 176: int(30)
! 177: [1200]=>
! 178: int(2400)
! 179: }
! 180: array(3) {
! 181: [1]=>
! 182: int(2)
! 183: [15]=>
! 184: int(30)
! 185: [1200]=>
! 186: int(2400)
! 187: }
! 188: ------ Test 7 --------
! 189: array(3) {
! 190: [7]=>
! 191: int(14)
! 192: [11]=>
! 193: int(22)
! 194: [1100]=>
! 195: int(2200)
! 196: }
! 197: array(3) {
! 198: [7]=>
! 199: int(14)
! 200: [11]=>
! 201: int(22)
! 202: [1100]=>
! 203: int(2200)
! 204: }
! 205: ------ Test 8 --------
! 206: array(6) {
! 207: [0]=>
! 208: int(0)
! 209: [7]=>
! 210: int(14)
! 211: [2]=>
! 212: int(4)
! 213: [11]=>
! 214: int(22)
! 215: [1100]=>
! 216: int(2200)
! 217: [-2500]=>
! 218: &int(-5000)
! 219: }
! 220: array(6) {
! 221: [0]=>
! 222: int(0)
! 223: [7]=>
! 224: int(14)
! 225: [2]=>
! 226: int(4)
! 227: [11]=>
! 228: int(22)
! 229: [1100]=>
! 230: int(2200)
! 231: [-2500]=>
! 232: &int(-5000)
! 233: }
! 234: ------ Test 9 --------
! 235: array(3) {
! 236: [7]=>
! 237: int(14)
! 238: [11]=>
! 239: int(22)
! 240: [1100]=>
! 241: int(2200)
! 242: }
! 243: array(3) {
! 244: [7]=>
! 245: int(14)
! 246: [11]=>
! 247: int(22)
! 248: [1100]=>
! 249: int(2200)
! 250: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>