extract_variation4.phpt 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. --TEST--
  2. Test extract() function (variation 4)
  3. --FILE--
  4. <?php
  5. $mixed_array = array(
  6. array( 1 => "one", 2 => "two", 3 => 7, 4 => "four", 5 => "five" ),
  7. array( "f" => "fff", "1" => "one", 4 => 6, "" => "blank", 2 => "float", "F" => "FFF",
  8. "blank" => "", 3 => 3.7, 5 => 7, 6 => 8.6, '5' => "Five", "4name" => "jonny", "a" => NULL, NULL => 3 ),
  9. array( 12, "name", 'age', '45' ),
  10. );
  11. $counter = 0;
  12. foreach ( $mixed_array as $sub_array ) {
  13. echo "\n-- Iteration $counter --\n";
  14. $counter++;
  15. var_dump ( extract($sub_array)); /* Single Argument */
  16. /* variations of two arguments */
  17. var_dump ( extract($sub_array, EXTR_OVERWRITE));
  18. var_dump ( extract($sub_array, EXTR_SKIP));
  19. var_dump ( extract($sub_array, EXTR_IF_EXISTS));
  20. /* variations of three arguments with use of various extract types*/
  21. var_dump ( extract($sub_array, EXTR_PREFIX_INVALID, "ssd"));
  22. var_dump ( extract($sub_array, EXTR_PREFIX_SAME, "sss"));
  23. var_dump ( extract($sub_array, EXTR_PREFIX_ALL, "bb"));
  24. var_dump ( extract($sub_array, EXTR_PREFIX_ALL, "")); // "_" taken as default prefix
  25. var_dump ( extract($sub_array, EXTR_PREFIX_IF_EXISTS, "bb"));
  26. }
  27. echo "Done\n";
  28. ?>
  29. --EXPECT--
  30. -- Iteration 0 --
  31. int(0)
  32. int(0)
  33. int(0)
  34. int(0)
  35. int(5)
  36. int(0)
  37. int(5)
  38. int(5)
  39. int(0)
  40. -- Iteration 1 --
  41. int(4)
  42. int(4)
  43. int(0)
  44. int(4)
  45. int(12)
  46. int(4)
  47. int(11)
  48. int(11)
  49. int(4)
  50. -- Iteration 2 --
  51. int(0)
  52. int(0)
  53. int(0)
  54. int(0)
  55. int(4)
  56. int(0)
  57. int(4)
  58. int(4)
  59. int(0)
  60. Done