How does PHP's 'unset' construct work internally?
问题 Preface: I do know how 'unset' works in the userland, but I would like to find out how it works internally. When unset is called on zval structure, it decreases the reference counter (refcount__gc). When refcount__gc reaches 0, the variable is no longer used and can be deleted. The question is whether it's always done immediately, or in some cases it can be done later by garbage collector? I have found two contradictory statements on this: unset() does just what it's name says - unset a