Description
The following code:
<?php
$stor = new SplObjectStorage();
$obj = new stdClass;
$stor[$obj] = 1;
$tmp = $stor->__debugInfo();
$tmp2 = $tmp[array_key_first($tmp)];
unset($tmp); // Drop $tmp2 RC to 1
$tmp2[0]['obj'] = new stdClass;
var_dump($tmp2);
Resulted in this output:
But I expected this output instead:
The problem is that the code uses a hack rather than properly managing memory: Z_ARRVAL_P(&tmp)->pDestructor = NULL;...
PHP Version
8.3+
Operating System
No response