1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
--TEST--
Test array_map() function : basic functionality
--FILE--
<?php
/* Prototype : array array_map ( callback $callback , array $arr1 [, array $... ] )
* Description: Applies the callback to the elements of the given arrays
* Source code: ext/standard/array.c
*/
echo "*** Testing array_map() : basic functionality ***\n";
function multiply($p, $q) {
return ($p * $q);
}
function square($p) {
return ($p * $p);
}
function concatenate($a, $b) {
return "$a = $b";
}
// integer array
$arr1 = array(1, 2, 3);
$arr2 = array(4, 5, 6);
echo "-- With two integer array --\n";
var_dump( array_map('multiply', $arr1, $arr2) );
echo "-- With single integer array --\n";
var_dump( array_map('square', $arr1) );
// string array
$arr1 = array("one", "two");
$arr2 = array("single", "double");
echo "-- With string array --\n";
var_dump( array_map('concatenate', $arr1, $arr2) );
echo "Done";
?>
--EXPECTF--
*** Testing array_map() : basic functionality ***
-- With two integer array --
array(3) {
[0]=>
int(4)
[1]=>
int(10)
[2]=>
int(18)
}
-- With single integer array --
array(3) {
[0]=>
int(1)
[1]=>
int(4)
[2]=>
int(9)
}
-- With string array --
array(2) {
[0]=>
string(12) "one = single"
[1]=>
string(12) "two = double"
}
Done
|