/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ext/spl/tests/bug70730.phpt
44 строки
773 B
Máté Kocsis
Declare tentative return types for ext/spl - part 1 (#7115)
13 июл 2021, 14:04
Не верифицирован
13 июл 2021, 14:04
c6357b8
Код
Авторство
О чём код?
--TEST-- Bug #70730 (Incorrect ArrayObject serialization if unset is called in serialize()) --FILE-- <?php class A extends \ArrayObject { protected $foo; public function __construct() { $this->foo = 'bar'; } public function serialize(): string { unset($this->foo); $result = parent::serialize(); $this->foo = 'bar'; return $result; } } $a = new A(); $a->append('item1'); $a->append('item2'); $a->append('item3'); $b = new A(); $b->unserialize($a->serialize()); var_dump($b); ?> --EXPECTF-- object(A)#%d (2) { ["foo":protected]=> string(3) "bar" ["storage":"ArrayObject":private]=> array(3) { [0]=> string(5) "item1" [1]=> string(5) "item2" [2]=> string(5) "item3" } }