array_flip_variation4.phpt 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. --TEST--
  2. Test array_flip() function : usage variations - 'input' argument with different invalid values for keys
  3. --FILE--
  4. <?php
  5. /* Prototype : array array_flip(array $input)
  6. * Description: Return array with key <-> value flipped
  7. * Source code: ext/standard/array.c
  8. */
  9. /*
  10. * Trying different invalid values for 'input' array argument
  11. */
  12. echo "*** Testing array_flip() : different invalid values in 'input' array argument ***\n";
  13. // class definition for object data
  14. class MyClass
  15. {
  16. public function __toString()
  17. {
  18. return 'object';
  19. }
  20. }
  21. $obj = new MyClass();
  22. // resource data
  23. $fp = fopen(__FILE__, 'r');
  24. $input = array(
  25. // float values
  26. 'float_value1' => 1.2,
  27. 'float_value2' => 0.5,
  28. 'flaot_value3' => 3.4E3,
  29. 'flaot_value4' => 5.6E-6,
  30. // bool values
  31. 'bool_value1' => true,
  32. 'bool_value2' => false,
  33. 'bool_value3' => TRUE,
  34. 'bool_value4' => FALSE,
  35. // null values
  36. 'null_value1' => null,
  37. // array value
  38. 'array_value' => array(1),
  39. // object value
  40. 'obj_value' => $obj,
  41. // resource value
  42. 'resource_value' => $fp,
  43. );
  44. var_dump( array_flip($input) );
  45. // closing resource
  46. fclose($fp);
  47. echo "Done"
  48. ?>
  49. --EXPECTF--
  50. *** Testing array_flip() : different invalid values in 'input' array argument ***
  51. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  52. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  53. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  54. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  55. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  56. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  57. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  58. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  59. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  60. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  61. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  62. Warning: array_flip(): Can only flip STRING and INTEGER values! in %s on line %d
  63. array(0) {
  64. }
  65. Done