1--TEST--
2Test array_walk() function : usage variations - 'input' array with different values
3--FILE--
4<?php
5/*
6 * Testing array_walk() with following types of 'input' arrays:
7 *    integer, float, string, bool, null, empty & mixed
8*/
9
10function print_value($value, $key, $count)
11{
12  echo  $count." : ".$key." ".$value."\n";
13}
14
15echo "*** Testing array_walk() : 'input' array with different values***\n";
16
17// different arrays as input
18$input_values = array(
19
20       // integer values
21/*1*/  array(1, 0, -10, 023, -041, 0x5A, 0X1F, -0x6E),
22
23       // float value
24       array(3.4, 0.8, -2.9, 6.25e2, 8.20E-3),
25
26       // string values
27       array('Mango', "Apple", 'Orange', "Lemon"),
28
29       // bool values
30/*4*/  array(true, false, TRUE, FALSE),
31
32       // null values
33       array(null, NULL),
34
35       // empty array
36       array(),
37
38       // binary array
39       array(b"binary"),
40
41       // mixed array
42/*8*/  array(16, 8.345, "Fruits", true, null, FALSE, -98, 0.005, 'banana')
43);
44
45for($count = 0; $count < count($input_values); $count++) {
46  echo "\n-- Iteration ".($count + 1)." --\n";
47  var_dump( array_walk($input_values[$count], "print_value", $count+1));
48}
49echo "Done"
50?>
51--EXPECT--
52*** Testing array_walk() : 'input' array with different values***
53
54-- Iteration 1 --
551 : 0 1
561 : 1 0
571 : 2 -10
581 : 3 19
591 : 4 -33
601 : 5 90
611 : 6 31
621 : 7 -110
63bool(true)
64
65-- Iteration 2 --
662 : 0 3.4
672 : 1 0.8
682 : 2 -2.9
692 : 3 625
702 : 4 0.0082
71bool(true)
72
73-- Iteration 3 --
743 : 0 Mango
753 : 1 Apple
763 : 2 Orange
773 : 3 Lemon
78bool(true)
79
80-- Iteration 4 --
814 : 0 1
824 : 1
834 : 2 1
844 : 3
85bool(true)
86
87-- Iteration 5 --
885 : 0
895 : 1
90bool(true)
91
92-- Iteration 6 --
93bool(true)
94
95-- Iteration 7 --
967 : 0 binary
97bool(true)
98
99-- Iteration 8 --
1008 : 0 16
1018 : 1 8.345
1028 : 2 Fruits
1038 : 3 1
1048 : 4
1058 : 5
1068 : 6 -98
1078 : 7 0.005
1088 : 8 banana
109bool(true)
110Done
111