1--TEST-- 2Test clone of DateTime 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 DateTime object --\n"; 11$d1 = new DateTime("2009-02-03 12:34:41 GMT"); 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===DONE=== 29--EXPECTF-- 30*** Testing clone on DateTime objects *** 31 32-- Create a DateTime object -- 33object(DateTime)#%d (3) { 34 ["date"]=> 35 string(26) "2009-02-03 12:34:41.000000" 36 ["timezone_type"]=> 37 int(2) 38 ["timezone"]=> 39 string(3) "GMT" 40} 41 42-- Add some properties -- 43object(DateTime)#%d (5) { 44 ["property1"]=> 45 int(99) 46 ["property2"]=> 47 string(5) "Hello" 48 ["date"]=> 49 string(26) "2009-02-03 12:34:41.000000" 50 ["timezone_type"]=> 51 int(2) 52 ["timezone"]=> 53 string(3) "GMT" 54} 55 56-- clone it -- 57object(DateTime)#%d (5) { 58 ["property1"]=> 59 int(99) 60 ["property2"]=> 61 string(5) "Hello" 62 ["date"]=> 63 string(26) "2009-02-03 12:34:41.000000" 64 ["timezone_type"]=> 65 int(2) 66 ["timezone"]=> 67 string(3) "GMT" 68} 69 70-- Add some more properties -- 71object(DateTime)#%d (7) { 72 ["property1"]=> 73 int(99) 74 ["property2"]=> 75 string(5) "Hello" 76 ["property3"]=> 77 bool(true) 78 ["property4"]=> 79 float(10.5) 80 ["date"]=> 81 string(26) "2009-02-03 12:34:41.000000" 82 ["timezone_type"]=> 83 int(2) 84 ["timezone"]=> 85 string(3) "GMT" 86} 87 88-- clone it -- 89object(DateTime)#%d (7) { 90 ["property1"]=> 91 int(99) 92 ["property2"]=> 93 string(5) "Hello" 94 ["property3"]=> 95 bool(true) 96 ["property4"]=> 97 float(10.5) 98 ["date"]=> 99 string(26) "2009-02-03 12:34:41.000000" 100 ["timezone_type"]=> 101 int(2) 102 ["timezone"]=> 103 string(3) "GMT" 104} 105===DONE=== 106