Annotation of embedaddon/php/ext/spl/tests/arrayObject_exchangeArray_basic1.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: SPL: ArrayObject::exchangeArray() and copy-on-write references
                      3: --FILE--
                      4: <?php
                      5: $ao = new ArrayObject();
                      6: $swapIn = array();
                      7: $cowRef = $swapIn; // create a copy-on-write ref to $swapIn
                      8: $ao->exchangeArray($swapIn);
                      9: 
                     10: $ao['a'] = 'adding element to $ao';
                     11: $swapIn['b'] = 'adding element to $swapIn';
                     12: $ao['c'] = 'adding another element to $ao';
                     13: 
                     14: echo "\n--> swapIn:  ";
                     15: var_dump($swapIn);
                     16: 
                     17: echo "\n--> cowRef:  ";
                     18: var_dump($cowRef);
                     19: 
                     20: echo "\n--> ao:  ";
                     21: var_dump($ao);
                     22: ?>
                     23: --EXPECTF--
                     24: --> swapIn:  array(1) {
                     25:   ["b"]=>
                     26:   string(25) "adding element to $swapIn"
                     27: }
                     28: 
                     29: --> cowRef:  array(0) {
                     30: }
                     31: 
                     32: --> ao:  object(ArrayObject)#%d (1) {
                     33:   ["storage":"ArrayObject":private]=>
                     34:   array(2) {
                     35:     ["a"]=>
                     36:     string(21) "adding element to $ao"
                     37:     ["c"]=>
                     38:     string(29) "adding another element to $ao"
                     39:   }
                     40: }

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