1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 08:12:21 +01:00
Files
archived-php-src/ext/spl/tests/ArrayObject_proptable_canonicalization.phpt
Nikita Popov 0368dc9f28 Fix proptable canonicalization bypass in ArrayObject
When an ArrayObject wraps an object, we should be using the
proptable canonicalilzation rules, which require all keys to be
strings.
2021-01-26 14:05:41 +01:00

34 lines
451 B
PHP

--TEST--
When ArrayObject wraps an object, we should use proptable canonicalization
--FILE--
<?php
$o = new stdClass;
$ao = new ArrayObject($o);
$ao[0] = 1;
var_dump($o);
$ao[0] += 1;
var_dump($o);
var_dump(isset($ao[0]));
var_dump((array) $ao);
unset($ao[0]);
var_dump($o);
?>
--EXPECT--
object(stdClass)#1 (1) {
["0"]=>
int(1)
}
object(stdClass)#1 (1) {
["0"]=>
int(2)
}
bool(true)
array(1) {
[0]=>
int(2)
}
object(stdClass)#1 (0) {
}