Annotation of embedaddon/php/ext/standard/tests/array/array_map_variation9.phpt, revision 1.1
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
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>