bug60362.phpt 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. --TEST--
  2. Bug #60362: non-existent sub-sub keys should not have values
  3. --FILE--
  4. <?php
  5. $arr = array('exists' => 'foz');
  6. if (isset($arr['exists']['non_existent'])) {
  7. echo "sub-key 'non_existent' is set: ";
  8. var_dump($arr['exists']['non_existent']);
  9. } else {
  10. echo "sub-key 'non_existent' is not set.\n";
  11. }
  12. if (isset($arr['exists'][1])) {
  13. echo "sub-key 1 is set: ";
  14. var_dump($arr['exists'][1]);
  15. } else {
  16. echo "sub-key 1 is not set.\n";
  17. }
  18. echo "-------------------\n";
  19. if (isset($arr['exists']['non_existent']['sub_sub'])) {
  20. echo "sub-key 'sub_sub' is set: ";
  21. var_dump($arr['exists']['non_existent']['sub_sub']);
  22. } else {
  23. echo "sub-sub-key 'sub_sub' is not set.\n";
  24. }
  25. if (isset($arr['exists'][1][0])) {
  26. echo "sub-sub-key 0 is set: ";
  27. var_dump($arr['exists'][1][0]);
  28. } else {
  29. echo "sub-sub-key 0 is not set.\n";
  30. }
  31. echo "-------------------\n";
  32. if (empty($arr['exists']['non_existent'])) {
  33. echo "sub-key 'non_existent' is empty.\n";
  34. } else {
  35. echo "sub-key 'non_existent' is not empty: ";
  36. var_dump($arr['exists']['non_existent']);
  37. }
  38. if (empty($arr['exists'][1])) {
  39. echo "sub-key 1 is empty.\n";
  40. } else {
  41. echo "sub-key 1 is not empty: ";
  42. var_dump($arr['exists'][1]);
  43. }
  44. echo "-------------------\n";
  45. if (empty($arr['exists']['non_existent']['sub_sub'])) {
  46. echo "sub-sub-key 'sub_sub' is empty.\n";
  47. } else {
  48. echo "sub-sub-key 'sub_sub' is not empty: ";
  49. var_dump($arr['exists']['non_existent']['sub_sub']);
  50. }
  51. if (empty($arr['exists'][1][0])) {
  52. echo "sub-sub-key 0 is empty.\n";
  53. } else {
  54. echo "sub-sub-key 0 is not empty: ";
  55. var_dump($arr['exists'][1][0]);
  56. }
  57. echo "DONE";
  58. ?>
  59. --EXPECT--
  60. sub-key 'non_existent' is not set.
  61. sub-key 1 is set: string(1) "o"
  62. -------------------
  63. sub-sub-key 'sub_sub' is not set.
  64. sub-sub-key 0 is set: string(1) "o"
  65. -------------------
  66. sub-key 'non_existent' is empty.
  67. sub-key 1 is not empty: string(1) "o"
  68. -------------------
  69. sub-sub-key 'sub_sub' is empty.
  70. sub-sub-key 0 is not empty: string(1) "o"
  71. DONE