bug73091.phpt 756 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. --TEST--
  2. Bug #73091 (Unserializing DateInterval object may lead to __toString invocation)
  3. --FILE--
  4. <?php
  5. class foo {
  6. function __toString() {
  7. var_dump(0);
  8. return 'may be a bug';
  9. }
  10. }
  11. var_dump(unserialize('O:12:"DateInterval":1:{s:4:"days";O:3:"foo":0:{}}'));
  12. ?>
  13. --EXPECTF--
  14. object(DateInterval)#%d (16) {
  15. ["days"]=>
  16. int(-1)
  17. ["y"]=>
  18. int(-1)
  19. ["m"]=>
  20. int(-1)
  21. ["d"]=>
  22. int(-1)
  23. ["h"]=>
  24. int(-1)
  25. ["i"]=>
  26. int(-1)
  27. ["s"]=>
  28. int(-1)
  29. ["f"]=>
  30. float(0)
  31. ["weekday"]=>
  32. int(-1)
  33. ["weekday_behavior"]=>
  34. int(-1)
  35. ["first_last_day_of"]=>
  36. int(-1)
  37. ["invert"]=>
  38. int(0)
  39. ["special_type"]=>
  40. int(0)
  41. ["special_amount"]=>
  42. int(-1)
  43. ["have_weekday_relative"]=>
  44. int(0)
  45. ["have_special_relative"]=>
  46. int(0)
  47. }