php-src/Zend/tests/enum/unserialize-refcount.phpt
Ilija Tovilo 269c8dac1d
Implement enums
RFC: https://wiki.php.net/rfc/enumerations

Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>

Closes GH-6489.
2021-03-17 19:08:03 +01:00

45 lines
667 B
PHP

--TEST--
Enum unserialize refcount
--FILE--
<?php
enum Foo {
case Bar;
}
debug_zval_dump(Foo::Bar);
$foo = Foo::Bar;
debug_zval_dump($foo);
$bar = unserialize('E:7:"Foo:Bar";');
debug_zval_dump($foo);
unset($bar);
debug_zval_dump($foo);
unset($foo);
debug_zval_dump(Foo::Bar);
?>
--EXPECT--
object(Foo)#1 (1) refcount(2){
["name"]=>
string(3) "Bar" interned
}
object(Foo)#1 (1) refcount(3){
["name"]=>
string(3) "Bar" interned
}
object(Foo)#1 (1) refcount(4){
["name"]=>
string(3) "Bar" interned
}
object(Foo)#1 (1) refcount(3){
["name"]=>
string(3) "Bar" interned
}
object(Foo)#1 (1) refcount(2){
["name"]=>
string(3) "Bar" interned
}