DateTime_clone_basic3.phpt 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. --TEST--
  2. Test clone of DateTime objects
  3. --FILE--
  4. <?php
  5. //Set the default time zone
  6. date_default_timezone_set("Europe/London");
  7. echo "*** Testing clone on DateTime objects ***\n";
  8. echo "\n-- Create a DateTime object --\n";
  9. $d1 = new DateTime("2009-02-03 12:34:41 GMT");
  10. var_dump($d1);
  11. echo "\n-- Add some properties --\n";
  12. $d1->property1 = 99;
  13. $d1->property2 = "Hello";
  14. var_dump($d1);
  15. echo "\n-- clone it --\n";
  16. $d1_clone = clone $d1;
  17. var_dump($d1_clone);
  18. echo "\n-- Add some more properties --\n";
  19. $d1_clone->property3 = true;
  20. $d1_clone->property4 = 10.5;
  21. var_dump($d1_clone);
  22. echo "\n-- clone it --\n";
  23. $d2_clone = clone $d1_clone;
  24. var_dump($d2_clone);
  25. ?>
  26. ===DONE===
  27. --EXPECTF--
  28. *** Testing clone on DateTime objects ***
  29. -- Create a DateTime object --
  30. object(DateTime)#%d (3) {
  31. ["date"]=>
  32. string(26) "2009-02-03 12:34:41.000000"
  33. ["timezone_type"]=>
  34. int(2)
  35. ["timezone"]=>
  36. string(3) "GMT"
  37. }
  38. -- Add some properties --
  39. object(DateTime)#%d (5) {
  40. ["date"]=>
  41. string(26) "2009-02-03 12:34:41.000000"
  42. ["timezone_type"]=>
  43. int(2)
  44. ["timezone"]=>
  45. string(3) "GMT"
  46. ["property1"]=>
  47. int(99)
  48. ["property2"]=>
  49. string(5) "Hello"
  50. }
  51. -- clone it --
  52. object(DateTime)#%d (5) {
  53. ["date"]=>
  54. string(26) "2009-02-03 12:34:41.000000"
  55. ["timezone_type"]=>
  56. int(2)
  57. ["timezone"]=>
  58. string(3) "GMT"
  59. ["property1"]=>
  60. int(99)
  61. ["property2"]=>
  62. string(5) "Hello"
  63. }
  64. -- Add some more properties --
  65. object(DateTime)#%d (7) {
  66. ["date"]=>
  67. string(26) "2009-02-03 12:34:41.000000"
  68. ["timezone_type"]=>
  69. int(2)
  70. ["timezone"]=>
  71. string(3) "GMT"
  72. ["property1"]=>
  73. int(99)
  74. ["property2"]=>
  75. string(5) "Hello"
  76. ["property3"]=>
  77. bool(true)
  78. ["property4"]=>
  79. float(10.5)
  80. }
  81. -- clone it --
  82. object(DateTime)#%d (7) {
  83. ["date"]=>
  84. string(26) "2009-02-03 12:34:41.000000"
  85. ["timezone_type"]=>
  86. int(2)
  87. ["timezone"]=>
  88. string(3) "GMT"
  89. ["property1"]=>
  90. int(99)
  91. ["property2"]=>
  92. string(5) "Hello"
  93. ["property3"]=>
  94. bool(true)
  95. ["property4"]=>
  96. float(10.5)
  97. }
  98. ===DONE===