1--TEST-- 2Test is_array() function 3--FILE-- 4<?php 5echo "*** Testing is_array() on different type of arrays ***\n"; 6/* different types of arrays */ 7$arrays = array( 8 array(), 9 array(NULL), 10 array(null), 11 array(true), 12 array(""), 13 array(''), 14 array(array(), array()), 15 array(array(1, 2), array('a', 'b')), 16 array(1 => 'One'), 17 array("test" => "is_array"), 18 array(0), 19 array(-1), 20 array(10.5, 5.6), 21 array("string", "test"), 22 array('string', 'test') 23); 24/* loop to check that is_array() recognizes different 25 type of arrays, expected output bool(true) */ 26$loop_counter = 1; 27foreach ($arrays as $var_array ) { 28 echo "-- Iteration $loop_counter --\n"; $loop_counter++; 29 var_dump( is_array ($var_array) ); 30} 31 32echo "\n*** Testing is_array() on non array types ***\n"; 33 34// get a resource type variable 35$fp = fopen (__FILE__, "r"); 36$dfp = opendir ( __DIR__ ); 37 38// unset variables 39$unset_array = array(10); 40unset($unset_array); 41 42// other types in a array 43$varient_arrays = array ( 44 /* integers */ 45 543915, 46 -5322, 47 0x55F, 48 -0xCCF, 49 123, 50 -0654, 51 52 /* strings */ 53 "", 54 '', 55 "0", 56 '0', 57 'string', 58 "string", 59 60 /* floats */ 61 10.0000000000000000005, 62 .5e6, 63 -.5E7, 64 .5E+8, 65 -.5e+90, 66 1e5, 67 68 /* objects */ 69 new stdclass, 70 71 /* resources */ 72 $fp, 73 $dfp, 74 75 /* nulls */ 76 null, 77 NULL, 78 79 /* boolean */ 80 true, 81 TRUE, 82 FALSE, 83 false, 84 85 /* unset/undefined arrays */ 86 @$unset_array, 87 @$undefined_array 88); 89/* loop through the $varient_array to see working of 90 is_array() on non array types, expected output bool(false) */ 91$loop_counter = 1; 92foreach ($varient_arrays as $type ) { 93 echo "-- Iteration $loop_counter --\n"; $loop_counter++; 94 var_dump( is_array ($type) ); 95} 96 97echo "Done\n"; 98/* close resources */ 99fclose($fp); 100closedir($dfp); 101?> 102--EXPECT-- 103*** Testing is_array() on different type of arrays *** 104-- Iteration 1 -- 105bool(true) 106-- Iteration 2 -- 107bool(true) 108-- Iteration 3 -- 109bool(true) 110-- Iteration 4 -- 111bool(true) 112-- Iteration 5 -- 113bool(true) 114-- Iteration 6 -- 115bool(true) 116-- Iteration 7 -- 117bool(true) 118-- Iteration 8 -- 119bool(true) 120-- Iteration 9 -- 121bool(true) 122-- Iteration 10 -- 123bool(true) 124-- Iteration 11 -- 125bool(true) 126-- Iteration 12 -- 127bool(true) 128-- Iteration 13 -- 129bool(true) 130-- Iteration 14 -- 131bool(true) 132-- Iteration 15 -- 133bool(true) 134 135*** Testing is_array() on non array types *** 136-- Iteration 1 -- 137bool(false) 138-- Iteration 2 -- 139bool(false) 140-- Iteration 3 -- 141bool(false) 142-- Iteration 4 -- 143bool(false) 144-- Iteration 5 -- 145bool(false) 146-- Iteration 6 -- 147bool(false) 148-- Iteration 7 -- 149bool(false) 150-- Iteration 8 -- 151bool(false) 152-- Iteration 9 -- 153bool(false) 154-- Iteration 10 -- 155bool(false) 156-- Iteration 11 -- 157bool(false) 158-- Iteration 12 -- 159bool(false) 160-- Iteration 13 -- 161bool(false) 162-- Iteration 14 -- 163bool(false) 164-- Iteration 15 -- 165bool(false) 166-- Iteration 16 -- 167bool(false) 168-- Iteration 17 -- 169bool(false) 170-- Iteration 18 -- 171bool(false) 172-- Iteration 19 -- 173bool(false) 174-- Iteration 20 -- 175bool(false) 176-- Iteration 21 -- 177bool(false) 178-- Iteration 22 -- 179bool(false) 180-- Iteration 23 -- 181bool(false) 182-- Iteration 24 -- 183bool(false) 184-- Iteration 25 -- 185bool(false) 186-- Iteration 26 -- 187bool(false) 188-- Iteration 27 -- 189bool(false) 190-- Iteration 28 -- 191bool(false) 192-- Iteration 29 -- 193bool(false) 194Done 195