Annotation of embedaddon/php/ext/session/tests/026.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: correct instantiation of references between variables in sessions
                      3: --SKIPIF--
                      4: <?php include('skipif.inc'); ?>
                      5: --INI--
                      6: session.use_cookies=0
                      7: session.cache_limiter=
                      8: session.serialize_handler=php
                      9: session.save_handler=files
                     10: --FILE--
                     11: <?php
                     12: error_reporting(E_ALL);
                     13: 
                     14: session_id("abtest");
                     15: session_start();
                     16: 
                     17: class a {
                     18:     public $test = "hallo";
                     19: }
                     20:  
                     21: class b {
                     22:     public $a;
                     23:     function b(&$a) {
                     24:         $this->a = &$a;
                     25:     }
                     26: }
                     27:  
                     28: $a = new a();
                     29: $b = new b($a);
                     30: 
                     31: echo "original values:\n";
                     32: var_dump($a,$b);
                     33: 
                     34: $_SESSION['a'] = $a;
                     35: $_SESSION['b'] = $b;
                     36: 
                     37: session_write_close();
                     38: unset($_SESSION['a']);
                     39: unset($_SESSION['b']);
                     40: 
                     41: session_start();
                     42: $a = $_SESSION['a'];
                     43: $b = $_SESSION['b'];
                     44: echo "values after session:\n";
                     45: var_dump($a,$b);
                     46: ?>
                     47: --EXPECTF--
                     48: original values:
                     49: object(a)#%d (1) {
                     50:   ["test"]=>
                     51:   string(5) "hallo"
                     52: }
                     53: object(b)#%d (1) {
                     54:   ["a"]=>
                     55:   &object(a)#%d (1) {
                     56:     ["test"]=>
                     57:     string(5) "hallo"
                     58:   }
                     59: }
                     60: values after session:
                     61: object(a)#%d (1) {
                     62:   ["test"]=>
                     63:   string(5) "hallo"
                     64: }
                     65: object(b)#%d (1) {
                     66:   ["a"]=>
                     67:   &object(a)#%d (1) {
                     68:     ["test"]=>
                     69:     string(5) "hallo"
                     70:   }
                     71: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>