zend_weakmap.phpt 731 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. --TEST--
  2. Test internal weakmap API
  3. --EXTENSIONS--
  4. zend_test
  5. --FILE--
  6. <?php
  7. $id1 = new \stdClass;
  8. $id2 = new \stdClass;
  9. var_dump(zend_weakmap_attach($id1, 1));
  10. var_dump(zend_weakmap_attach($id1, 3));
  11. var_dump(zend_weakmap_attach($id2, 2));
  12. var_dump(zend_weakmap_dump());
  13. unset($id1);
  14. var_dump(zend_weakmap_dump());
  15. var_dump(zend_weakmap_remove($id2));
  16. var_dump(zend_weakmap_remove($id2));
  17. var_dump(zend_weakmap_dump());
  18. var_dump(zend_weakmap_attach($id2, $id2));
  19. var_dump(zend_weakmap_dump());
  20. ?>
  21. --EXPECTF--
  22. bool(true)
  23. bool(false)
  24. bool(true)
  25. array(2) {
  26. [%s]=>
  27. int(1)
  28. [%s]=>
  29. int(2)
  30. }
  31. array(1) {
  32. [%s]=>
  33. int(2)
  34. }
  35. bool(true)
  36. bool(false)
  37. array(0) {
  38. }
  39. bool(true)
  40. array(1) {
  41. [%s]=>
  42. object(stdClass)#2 (0) {
  43. }
  44. }