DateTimeZone_clone_basic3.phpt 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. --TEST--
  2. Test clone of DateTimeZOne 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 DateTimeZone object --\n";
  9. $d1 = new DateTimeZone("Europe/London");
  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. --EXPECTF--
  27. *** Testing clone on DateTime objects ***
  28. -- Create a DateTimeZone object --
  29. object(DateTimeZone)#%d (2) {
  30. ["timezone_type"]=>
  31. int(3)
  32. ["timezone"]=>
  33. string(13) "Europe/London"
  34. }
  35. -- Add some properties --
  36. object(DateTimeZone)#%d (4) {
  37. ["property1"]=>
  38. int(99)
  39. ["property2"]=>
  40. string(5) "Hello"
  41. ["timezone_type"]=>
  42. int(3)
  43. ["timezone"]=>
  44. string(13) "Europe/London"
  45. }
  46. -- clone it --
  47. object(DateTimeZone)#%d (4) {
  48. ["property1"]=>
  49. int(99)
  50. ["property2"]=>
  51. string(5) "Hello"
  52. ["timezone_type"]=>
  53. int(3)
  54. ["timezone"]=>
  55. string(13) "Europe/London"
  56. }
  57. -- Add some more properties --
  58. object(DateTimeZone)#%d (6) {
  59. ["property1"]=>
  60. int(99)
  61. ["property2"]=>
  62. string(5) "Hello"
  63. ["property3"]=>
  64. bool(true)
  65. ["property4"]=>
  66. float(10.5)
  67. ["timezone_type"]=>
  68. int(3)
  69. ["timezone"]=>
  70. string(13) "Europe/London"
  71. }
  72. -- clone it --
  73. object(DateTimeZone)#%d (6) {
  74. ["property1"]=>
  75. int(99)
  76. ["property2"]=>
  77. string(5) "Hello"
  78. ["property3"]=>
  79. bool(true)
  80. ["property4"]=>
  81. float(10.5)
  82. ["timezone_type"]=>
  83. int(3)
  84. ["timezone"]=>
  85. string(13) "Europe/London"
  86. }