prev_basic.phpt 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. --TEST--
  2. Test prev() function : basic functionality
  3. --FILE--
  4. <?php
  5. /* Prototype : mixed prev(array $array_arg)
  6. * Description: Move array argument's internal pointer to the previous element and return it
  7. * Source code: ext/standard/array.c
  8. */
  9. /*
  10. * Test basic functionality of prev()
  11. */
  12. echo "*** Testing prev() : basic functionality ***\n";
  13. $array = array('zero', 'one', 'two');
  14. end($array);
  15. echo key($array) . " => " . current($array) . "\n";
  16. var_dump(prev($array));
  17. echo key($array) . " => " . current($array) . "\n";
  18. var_dump(prev($array));
  19. echo key($array) . " => " . current($array) . "\n";
  20. var_dump(prev($array));
  21. echo "\n*** Testing an array with differing values/keys ***\n";
  22. $array2 = array('one', 2 => "help", 3, false, 'stringkey2' => 'val2', 'stringkey1' => 'val1');
  23. end($array2);
  24. $length = count($array2);
  25. for ($i = $length; $i > 0; $i--) {
  26. var_dump(prev($array2));
  27. }
  28. ?>
  29. ===DONE===
  30. --EXPECTF--
  31. *** Testing prev() : basic functionality ***
  32. 2 => two
  33. string(3) "one"
  34. 1 => one
  35. string(4) "zero"
  36. 0 => zero
  37. bool(false)
  38. *** Testing an array with differing values/keys ***
  39. string(4) "val2"
  40. bool(false)
  41. int(3)
  42. string(4) "help"
  43. string(3) "one"
  44. bool(false)
  45. ===DONE===