]> granicus.if.org Git - php/blob
a1b18bd234
[php] /
1 --TEST--
2 basic array_filter test
3 --FILE--
4 <?php
5 function odd($var)
6 {
7    return($var & 1);
8 }
9
10 function even($var)
11 {
12    return(!($var & 1));
13 }
14
15 $array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
16 $array2 = array(6, 7, 8, 9, 10, 11, 12, 0);
17 $array3 = array(TRUE, FALSE, NULL);
18
19 echo "Odd :\n";
20 var_dump(array_filter($array1, "odd"));
21 var_dump(array_filter($array2, "odd"));
22 var_dump(array_filter($array3, "odd"));
23 echo "Even:\n";
24 var_dump(array_filter($array1, "even"));
25 var_dump(array_filter($array2, "even"));
26 var_dump(array_filter($array3, "even"));
27
28 var_dump(array_filter(array()));
29
30 ?>
31 --EXPECTF--
32 Odd :
33 array(3) {
34   ["a"]=>
35   int(1)
36   ["c"]=>
37   int(3)
38   ["e"]=>
39   int(5)
40 }
41 array(3) {
42   [1]=>
43   int(7)
44   [3]=>
45   int(9)
46   [5]=>
47   int(11)
48 }
49 array(1) {
50   [0]=>
51   bool(true)
52 }
53 Even:
54 array(2) {
55   ["b"]=>
56   int(2)
57   ["d"]=>
58   int(4)
59 }
60 array(5) {
61   [0]=>
62   int(6)
63   [2]=>
64   int(8)
65   [4]=>
66   int(10)
67   [6]=>
68   int(12)
69   [7]=>
70   int(0)
71 }
72 array(2) {
73   [1]=>
74   bool(false)
75   [2]=>
76   NULL
77 }
78 array(0) {
79 }