Annotation of embedaddon/php/tests/classes/clone_003.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: ZE2 object cloning, 3
3: --SKIPIF--
4: <?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?>
5: --FILE--
6: <?php
7: class base {
8: protected $p1 = 'base:1';
9: public $p2 = 'base:2';
10: public $p3 = 'base:3';
11: public $p4 = 'base:4';
12: public $p5 = 'base:5';
13: private $p6 = 'base:6';
14: public function __clone() {
15: }
16: };
17:
18: class test extends base {
19: public $p1 = 'test:1';
20: public $p3 = 'test:3';
21: public $p4 = 'test:4';
22: public $p5 = 'test:5';
23: public function __clone() {
24: $this->p5 = 'clone:5';
25: }
26: }
27:
28: $obj = new test;
29: $obj->p4 = 'A';
30: $copy = clone $obj;
31: echo "Object\n";
32: print_r($obj);
33: echo "Clown\n";
34: print_r($copy);
35: echo "Done\n";
36: ?>
37: --EXPECT--
38: Object
39: test Object
40: (
41: [p1] => test:1
42: [p3] => test:3
43: [p4] => A
44: [p5] => test:5
45: [p2] => base:2
46: [p6:base:private] => base:6
47: )
48: Clown
49: test Object
50: (
51: [p1] => test:1
52: [p3] => test:3
53: [p4] => A
54: [p5] => clone:5
55: [p2] => base:2
56: [p6:base:private] => base:6
57: )
58: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>