php-src/ext/standard/tests/array/prev_basic.phpt
2012-10-10 10:27:49 +08:00

54 lines
1.2 KiB
PHP

--TEST--
Test prev() function : basic functionality
--FILE--
<?php
/* Prototype : mixed prev(array $array_arg)
* Description: Move array argument's internal pointer to the previous element and return it
* Source code: ext/standard/array.c
*/
/*
* Test basic functionality of prev()
*/
echo "*** Testing prev() : basic functionality ***\n";
$array = array('zero', 'one', 'two');
end($array);
echo key($array) . " => " . current($array) . "\n";
var_dump(prev($array));
echo key($array) . " => " . current($array) . "\n";
var_dump(prev($array));
echo key($array) . " => " . current($array) . "\n";
var_dump(prev($array));
echo "\n*** Testing an array with differing values/keys ***\n";
$array2 = array('one', 2 => "help", 3, false, 'stringkey2' => 'val2', 'stringkey1' => 'val1');
end($array2);
$length = count($array2);
for ($i = $length; $i > 0; $i--) {
var_dump(prev($array2));
}
?>
===DONE===
--EXPECTF--
*** Testing prev() : basic functionality ***
2 => two
string(3) "one"
1 => one
string(4) "zero"
0 => zero
bool(false)
*** Testing an array with differing values/keys ***
string(4) "val2"
bool(false)
int(3)
string(4) "help"
string(3) "one"
bool(false)
===DONE===