1--TEST-- 2When ArrayObject wraps an object, we should use proptable canonicalization 3--FILE-- 4<?php 5 6$o = new stdClass; 7$ao = new ArrayObject($o); 8$ao[0] = 1; 9var_dump($o); 10$ao[0] += 1; 11var_dump($o); 12var_dump(isset($ao[0])); 13var_dump((array) $ao); 14unset($ao[0]); 15var_dump($o); 16 17?> 18--EXPECT-- 19object(stdClass)#1 (1) { 20 ["0"]=> 21 int(1) 22} 23object(stdClass)#1 (1) { 24 ["0"]=> 25 int(2) 26} 27bool(true) 28array(1) { 29 [0]=> 30 int(2) 31} 32object(stdClass)#1 (0) { 33} 34