©
本文档使用
php.cn手册 发布
(PECL weakref >= 0.1.0)
Weakref::release — Releases a previously acquired reference
Releases a previously acquired reference, potentially turning a strong reference back into a weak reference.
The Weakref instance maintains an internal acquired counter to track outstanding strong references. If the call to Weakref::release() is successful, this counter will be decremented by one. Once this counter reaches zero, the strong reference is turned back into a weak reference.
此函数没有参数。
Returns TRUE
if the reference was previously acquired and thus could be
released, FALSE
otherwise.
Example #1 Weakref::release() example
<?php
class MyClass {
public function __destruct () {
echo "Destroying object!\n" ;
}
}
$o1 = new MyClass ;
$r1 = new Weakref ( $o1 );
$r1 -> acquire ();
echo "Unsetting o1...\n" ;
unset( $o1 );
$o2 = $r1 -> get ();
$r1 -> release ();
echo "Unsetting o2...\n" ;
unset( $o2 );
?>
以上例程会输出:
Unsetting o1... Unsetting o2... Destroying object!