/
proc
/
3430793
/
cwd
/
usr
/
local
/
lsws
/
phpbuild
/
php-8.0.7
/
Zend
/
tests
/
weakrefs
/
File Upload :
llllll
Current File: //proc/3430793/cwd/usr/local/lsws/phpbuild/php-8.0.7/Zend/tests/weakrefs/weakmap_iteration.phpt
--TEST-- WeakMap iteration --FILE-- <?php $map = new WeakMap; echo "\nEmpty loop:\n"; foreach ($map as $key => $value) { var_dump($key, $value); } echo "\nSimple loop:\n"; $obj0 = new stdClass; $obj1 = new stdClass; $obj2 = new stdClass; $map[$obj0] = 0; $map[$obj1] = 1; $map[$obj2] = 2; foreach ($map as $key => $value) { var_dump($key, $value); } echo "\nObject removed during loop:\n"; foreach ($map as $key => $value) { if (isset($obj1) && $key === $obj1) unset($obj1); var_dump($key, $value); } echo "\nBy reference iteration:\n"; foreach ($map as $key => &$value) { $value++; } var_dump($map); ?> --EXPECT-- Empty loop: Simple loop: object(stdClass)#2 (0) { } int(0) object(stdClass)#3 (0) { } int(1) object(stdClass)#4 (0) { } int(2) Object removed during loop: object(stdClass)#2 (0) { } int(0) object(stdClass)#3 (0) { } int(1) object(stdClass)#4 (0) { } int(2) By reference iteration: object(WeakMap)#1 (2) { [0]=> array(2) { ["key"]=> object(stdClass)#2 (0) { } ["value"]=> &int(1) } [1]=> array(2) { ["key"]=> object(stdClass)#4 (0) { } ["value"]=> &int(3) } }
Copyright ©2k19 -
Hexid
|
Tex7ure