Annotation of embedaddon/php/ext/session/tests/006.phpt, revision 1.1.1.2

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: 
1.1.1.2 ! misho      34: $_SESSION["a"] = $a;
        !            35: $_SESSION["b"] = $b;
1.1       misho      36: session_write_close();
                     37: 
1.1.1.2 ! misho      38: unset($_SESSION["a"], $_SESSION["b"]);
1.1       misho      39: 
                     40: session_start();
                     41: 
                     42: echo "values after session:\n";
                     43: var_dump($a,$b);
                     44: ?>
                     45: --EXPECTF--
                     46: original values:
                     47: object(a)#%d (1) {
                     48:   ["test"]=>
                     49:   string(5) "hallo"
                     50: }
                     51: object(b)#%d (1) {
                     52:   ["a"]=>
                     53:   &object(a)#%d (1) {
                     54:     ["test"]=>
                     55:     string(5) "hallo"
                     56:   }
                     57: }
                     58: values after session:
                     59: object(a)#%d (1) {
                     60:   ["test"]=>
                     61:   string(5) "hallo"
                     62: }
                     63: object(b)#%d (1) {
                     64:   ["a"]=>
                     65:   &object(a)#%d (1) {
                     66:     ["test"]=>
                     67:     string(5) "hallo"
                     68:   }
                     69: }

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