1--TEST--
2basic array_filter test
3--FILE--
4<?php
5function odd($var)
6{
7   return($var & 1);
8}
9
10function 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
19echo "Odd :\n";
20var_dump(array_filter($array1, "odd"));
21var_dump(array_filter($array2, "odd"));
22var_dump(array_filter($array3, "odd"));
23echo "Even:\n";
24var_dump(array_filter($array1, "even"));
25var_dump(array_filter($array2, "even"));
26var_dump(array_filter($array3, "even"));
27
28var_dump(array_filter(array()));
29
30?>
31--EXPECT--
32Odd :
33array(3) {
34  ["a"]=>
35  int(1)
36  ["c"]=>
37  int(3)
38  ["e"]=>
39  int(5)
40}
41array(3) {
42  [1]=>
43  int(7)
44  [3]=>
45  int(9)
46  [5]=>
47  int(11)
48}
49array(1) {
50  [0]=>
51  bool(true)
52}
53Even:
54array(2) {
55  ["b"]=>
56  int(2)
57  ["d"]=>
58  int(4)
59}
60array(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}
72array(2) {
73  [1]=>
74  bool(false)
75  [2]=>
76  NULL
77}
78array(0) {
79}
80