mirror of
https://github.com/php/php-src.git
synced 2024-10-19 15:34:25 +00:00
216 lines
3.6 KiB
Plaintext
216 lines
3.6 KiB
Plaintext
|
--TEST--
|
||
|
Test is_array() function
|
||
|
--FILE--
|
||
|
<?php
|
||
|
/* Prototype: bool is_array ( mixed $var );
|
||
|
* Description: Finds whether the given variable is an array
|
||
|
*/
|
||
|
|
||
|
echo "*** Testing is_array() on different type of arrays ***\n";
|
||
|
/* different types of arrays */
|
||
|
$arrays = array(
|
||
|
array(),
|
||
|
array(NULL),
|
||
|
array(null),
|
||
|
array(true),
|
||
|
array(""),
|
||
|
array(''),
|
||
|
array(array(), array()),
|
||
|
array(array(1, 2), array('a', 'b')),
|
||
|
array(1 => 'One'),
|
||
|
array("test" => "is_array"),
|
||
|
array(0),
|
||
|
array(-1),
|
||
|
array(10.5, 5.6),
|
||
|
array("string", "test"),
|
||
|
array('string', 'test')
|
||
|
);
|
||
|
/* loop to check that is_array() recognizes different
|
||
|
type of arrays, expected output bool(true) */
|
||
|
$loop_counter = 1;
|
||
|
foreach ($arrays as $var_array ) {
|
||
|
echo "-- Iteration $loop_counter --\n"; $loop_counter++;
|
||
|
var_dump( is_array ($var_array) );
|
||
|
}
|
||
|
|
||
|
echo "\n*** Testing is_array() on non array types ***\n";
|
||
|
|
||
|
// get a resource type variable
|
||
|
$fp = fopen (__FILE__, "r");
|
||
|
$dfp = opendir ( dirname(__FILE__) );
|
||
|
|
||
|
// unset variables
|
||
|
$unset_array = array(10);
|
||
|
unset($unset_array);
|
||
|
|
||
|
// other types in a array
|
||
|
$varient_arrays = array (
|
||
|
/* integers */
|
||
|
543915,
|
||
|
-5322,
|
||
|
0x55F,
|
||
|
-0xCCF,
|
||
|
123,
|
||
|
-0654,
|
||
|
|
||
|
/* strings */
|
||
|
"",
|
||
|
'',
|
||
|
"0",
|
||
|
'0',
|
||
|
'string',
|
||
|
"string",
|
||
|
|
||
|
/* floats */
|
||
|
10.0000000000000000005,
|
||
|
.5e6,
|
||
|
-.5E7,
|
||
|
.5E+8,
|
||
|
-.5e+90,
|
||
|
1e5,
|
||
|
|
||
|
/* objects */
|
||
|
new stdclass,
|
||
|
|
||
|
/* resources */
|
||
|
$fp,
|
||
|
$dfp,
|
||
|
|
||
|
/* nulls */
|
||
|
null,
|
||
|
NULL,
|
||
|
|
||
|
/* boolean */
|
||
|
true,
|
||
|
TRUE,
|
||
|
FALSE,
|
||
|
false,
|
||
|
|
||
|
/* unset/undefined arrays */
|
||
|
@$unset_array,
|
||
|
@$undefined_array
|
||
|
);
|
||
|
/* loop through the $varient_array to see working of
|
||
|
is_array() on non array types, expected output bool(false) */
|
||
|
$loop_counter = 1;
|
||
|
foreach ($varient_arrays as $type ) {
|
||
|
echo "-- Iteration $loop_counter --\n"; $loop_counter++;
|
||
|
var_dump( is_array ($type) );
|
||
|
}
|
||
|
|
||
|
echo "\n*** Testing error conditions ***\n";
|
||
|
//Zero argument
|
||
|
var_dump( is_array() );
|
||
|
|
||
|
//arguments more than expected
|
||
|
var_dump( is_array ($fp, $fp) );
|
||
|
|
||
|
echo "Done\n";
|
||
|
?>
|
||
|
--CLEAN--
|
||
|
/* close resources */
|
||
|
fclose($fp);
|
||
|
closedir($dfp);
|
||
|
|
||
|
--EXPECTF--
|
||
|
*** Testing is_array() on different type of arrays ***
|
||
|
-- Iteration 1 --
|
||
|
bool(true)
|
||
|
-- Iteration 2 --
|
||
|
bool(true)
|
||
|
-- Iteration 3 --
|
||
|
bool(true)
|
||
|
-- Iteration 4 --
|
||
|
bool(true)
|
||
|
-- Iteration 5 --
|
||
|
bool(true)
|
||
|
-- Iteration 6 --
|
||
|
bool(true)
|
||
|
-- Iteration 7 --
|
||
|
bool(true)
|
||
|
-- Iteration 8 --
|
||
|
bool(true)
|
||
|
-- Iteration 9 --
|
||
|
bool(true)
|
||
|
-- Iteration 10 --
|
||
|
bool(true)
|
||
|
-- Iteration 11 --
|
||
|
bool(true)
|
||
|
-- Iteration 12 --
|
||
|
bool(true)
|
||
|
-- Iteration 13 --
|
||
|
bool(true)
|
||
|
-- Iteration 14 --
|
||
|
bool(true)
|
||
|
-- Iteration 15 --
|
||
|
bool(true)
|
||
|
|
||
|
*** Testing is_array() on non array types ***
|
||
|
-- Iteration 1 --
|
||
|
bool(false)
|
||
|
-- Iteration 2 --
|
||
|
bool(false)
|
||
|
-- Iteration 3 --
|
||
|
bool(false)
|
||
|
-- Iteration 4 --
|
||
|
bool(false)
|
||
|
-- Iteration 5 --
|
||
|
bool(false)
|
||
|
-- Iteration 6 --
|
||
|
bool(false)
|
||
|
-- Iteration 7 --
|
||
|
bool(false)
|
||
|
-- Iteration 8 --
|
||
|
bool(false)
|
||
|
-- Iteration 9 --
|
||
|
bool(false)
|
||
|
-- Iteration 10 --
|
||
|
bool(false)
|
||
|
-- Iteration 11 --
|
||
|
bool(false)
|
||
|
-- Iteration 12 --
|
||
|
bool(false)
|
||
|
-- Iteration 13 --
|
||
|
bool(false)
|
||
|
-- Iteration 14 --
|
||
|
bool(false)
|
||
|
-- Iteration 15 --
|
||
|
bool(false)
|
||
|
-- Iteration 16 --
|
||
|
bool(false)
|
||
|
-- Iteration 17 --
|
||
|
bool(false)
|
||
|
-- Iteration 18 --
|
||
|
bool(false)
|
||
|
-- Iteration 19 --
|
||
|
bool(false)
|
||
|
-- Iteration 20 --
|
||
|
bool(false)
|
||
|
-- Iteration 21 --
|
||
|
bool(false)
|
||
|
-- Iteration 22 --
|
||
|
bool(false)
|
||
|
-- Iteration 23 --
|
||
|
bool(false)
|
||
|
-- Iteration 24 --
|
||
|
bool(false)
|
||
|
-- Iteration 25 --
|
||
|
bool(false)
|
||
|
-- Iteration 26 --
|
||
|
bool(false)
|
||
|
-- Iteration 27 --
|
||
|
bool(false)
|
||
|
-- Iteration 28 --
|
||
|
bool(false)
|
||
|
-- Iteration 29 --
|
||
|
bool(false)
|
||
|
|
||
|
*** Testing error conditions ***
|
||
|
|
||
|
Warning: is_array(): Only one argument expected in %s on line %d
|
||
|
bool(false)
|
||
|
|
||
|
Warning: is_array(): Only one argument expected in %s on line %d
|
||
|
bool(false)
|
||
|
Done
|