xref: /PHP-7.0/ext/session/tests/019.phpt (revision db76b708)
1--TEST--
2serializing references test case using globals
3--SKIPIF--
4<?php include('skipif.inc'); ?>
5--INI--
6session.use_cookies=0
7session.use_strict_mode=0
8session.cache_limiter=
9session.serialize_handler=php
10session.save_handler=files
11--FILE--
12<?php
13
14error_reporting(E_ALL);
15
16class TFoo {
17	public $c;
18	function __construct($c) {
19		$this->c = $c;
20	}
21	function inc() {
22		$this->c++;
23	}
24}
25
26session_id("abtest");
27session_start();
28
29$_SESSION["o1"] = new TFoo(42);
30$_SESSION["o2"] =& $_SESSION["o1"];
31
32session_write_close();
33
34unset($_SESSION["o1"]);
35unset($_SESSION["o2"]);
36
37session_start();
38
39var_dump($_SESSION);
40
41$_SESSION["o1"]->inc();
42$_SESSION["o2"]->inc();
43
44var_dump($_SESSION);
45
46session_destroy();
47?>
48--EXPECTF--
49
50array(2) {
51  ["o1"]=>
52  &object(TFoo)#%d (1) {
53    ["c"]=>
54    int(42)
55  }
56  ["o2"]=>
57  &object(TFoo)#%d (1) {
58    ["c"]=>
59    int(42)
60  }
61}
62array(2) {
63  ["o1"]=>
64  &object(TFoo)#%d (1) {
65    ["c"]=>
66    int(44)
67  }
68  ["o2"]=>
69  &object(TFoo)#%d (1) {
70    ["c"]=>
71    int(44)
72  }
73}
74
75