bug61347.phpt 749 B

12345678910111213141516171819202122232425262728293031323334353637
  1. --TEST--
  2. Bug #61347 (inconsist isset behavior of Arrayobject)
  3. --FILE--
  4. <?php
  5. $a = array('b' => NULL, 37 => NULL);
  6. var_dump(isset($a['b'])); //false
  7. $b = new ArrayObject($a);
  8. var_dump(isset($b['b'])); //false
  9. var_dump(isset($b[37])); //false
  10. var_dump(isset($b['no_exists'])); //false
  11. var_dump(empty($b['b'])); //true
  12. var_dump(empty($b[37])); //true
  13. var_dump($b['b']);
  14. $a = array('b' => '', 37 => false);
  15. $b = new ArrayObject($a);
  16. var_dump(isset($b['b'])); //true
  17. var_dump(isset($b[37])); //true
  18. var_dump(isset($b['no_exists'])); //false
  19. var_dump(empty($b['b'])); //true
  20. var_dump(empty($b[37])); //true
  21. ?>
  22. --EXPECT--
  23. bool(false)
  24. bool(false)
  25. bool(false)
  26. bool(false)
  27. bool(true)
  28. bool(true)
  29. NULL
  30. bool(true)
  31. bool(true)
  32. bool(false)
  33. bool(true)
  34. bool(true)