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