Return to array_map_variation9.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / array |
1.1 misho 1: --TEST-- 2: Test array_map() function : usage variations - binary safe checking 3: --FILE-- 4: <?php 5: /* Prototype : array array_map ( callback $callback , array $arr1 [, array $... ] ) 6: * Description: Applies the callback to the elements of the given arrays 7: * Source code: ext/standard/array.c 8: */ 9: 10: /* 11: * Test array_map() by passing array having binary values for $arr1 argument 12: */ 13: 14: echo "*** Testing array_map() : array with binary data for 'arr1' argument ***\n"; 15: 16: function callback1($a) 17: { 18: return ($a); 19: } 20: function callback2($a, $b) 21: { 22: return array($a => $b); 23: } 24: 25: // array with binary data 26: $arr1 = array(b"hello", b"world", "1", b"22.22"); 27: 28: echo "-- checking binary safe array with one parameter callback function --\n"; 29: var_dump( array_map('callback1', $arr1) ); 30: 31: echo "-- checking binary safe array with two parameter callback function --\n"; 32: var_dump( array_map(b"callback2", $arr1) ); 33: 34: echo "Done"; 35: ?> 36: --EXPECTF-- 37: *** Testing array_map() : array with binary data for 'arr1' argument *** 38: -- checking binary safe array with one parameter callback function -- 39: array(4) { 40: [0]=> 41: string(5) "hello" 42: [1]=> 43: string(5) "world" 44: [2]=> 45: string(1) "1" 46: [3]=> 47: string(5) "22.22" 48: } 49: -- checking binary safe array with two parameter callback function -- 50: 51: Warning: Missing argument 2 for callback2() in %s on line %d%d 52: 53: Notice: Undefined variable: b in %s on line %d%d 54: 55: Warning: Missing argument 2 for callback2() in %s on line %d%d 56: 57: Notice: Undefined variable: b in %s on line %d%d 58: 59: Warning: Missing argument 2 for callback2() in %s on line %d%d 60: 61: Notice: Undefined variable: b in %s on line %d%d 62: 63: Warning: Missing argument 2 for callback2() in %s on line %d%d 64: 65: Notice: Undefined variable: b in %s on line %d%d 66: array(4) { 67: [0]=> 68: array(1) { 69: ["hello"]=> 70: NULL 71: } 72: [1]=> 73: array(1) { 74: ["world"]=> 75: NULL 76: } 77: [2]=> 78: array(1) { 79: [1]=> 80: NULL 81: } 82: [3]=> 83: array(1) { 84: ["22.22"]=> 85: NULL 86: } 87: } 88: Done