--TEST--
Test array_values() function
--INI--
precision=14
--FILE--
<?php
/* Prototype: array array_values ( array $input );
Discription: array_values() returns all the values from the input array
and indexes numerically the array
*/
echo "*** Testing array_values() on basic array ***\n";
$basic_arr = array( 1, 2, 2.0, "asdasd", array(1,2,3) );
var_dump( array_values($basic_arr) );
echo "\n*** Testing array_values() on various arrays ***";
$arrays = array (
array(),
array(0),
array(-1),
array( array() ),
array("Hello"),
array(""),
array("", array()),
array(1,2,3),
array(1,2,3, array()),
array(1,2,3, array(4,6)),
array("a" => 1, "b" => 2, "c" =>3),
array(0 => 0, 1 => 1, 2 => 2),
array(TRUE, FALSE, NULL, true, false, null, "TRUE", "FALSE",
"NULL", "\x000", "\000"),
array("Hi" => 1, "Hello" => 2, "World" => 3),
array("a" => "abcd", "a" => "", "ab" => -6, "cd" => -0.5 ),
array(0 => array(), 1=> array(0), 2 => array(1), ""=> array(), ""=>"" )
);
$i = 0;
/* loop through to test array_values() with different arrays given above */
foreach ($arrays as $array) {
echo "\n-- Iteration $i --\n";
var_dump( array_values($array) );
$i++;
}
echo "Done\n";
?>
--EXPECTF--
*** Testing array_values() on basic array ***
array(5) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
float(2)
[3]=>
string(6) "asdasd"
[4]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
*** Testing array_values() on various arrays ***
-- Iteration 0 --
array(0) {
}
-- Iteration 1 --
array(1) {
[0]=>
int(0)
}
-- Iteration 2 --
array(1) {
[0]=>
int(-1)
}
-- Iteration 3 --
array(1) {
[0]=>
array(0) {
}
}
-- Iteration 4 --
array(1) {
[0]=>
string(5) "Hello"
}
-- Iteration 5 --
array(1) {
[0]=>
string(0) ""
}
-- Iteration 6 --
array(2) {
[0]=>
string(0) ""
[1]=>
array(0) {
}
}
-- Iteration 7 --
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
-- Iteration 8 --
array(4) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
array(0) {
}
}
-- Iteration 9 --
array(4) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
array(2) {
[0]=>
int(4)
[1]=>
int(6)
}
}
-- Iteration 10 --
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
-- Iteration 11 --
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
-- Iteration 12 --
array(11) {
[0]=>
bool(true)
[1]=>
bool(false)
[2]=>
NULL
[3]=>
bool(true)
[4]=>
bool(false)
[5]=>
NULL
[6]=>
string(4) "TRUE"
[7]=>
string(5) "FALSE"
[8]=>
string(4) "NULL"
[9]=>
string(2) "