downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Installation/Configuration> <Weakref
[edit] Last updated: Fri, 25 May 2012

view this page in

Introduction

Les références faibles fournissent une façon non-intrusive de gérer les objets éphémères. Contrairement aux références normales (fortes), les références faibles n'alertent pas le gestionnaire de la libération de l'objet. Pour cette raison, un objet peut être détruit même si une référence faible vers cet objet existe toujours. Dans de telles conditions, la référence faible devient invalide de façon transparente.

Exemple #1 Exemple d'utilisation de Weakref

<?php
class MyClass {
    public function 
__destruct() {
        echo 
"Destruction de l'objet !\n";
    }
}

$o1 = new MyClass;

$r1 = new Weakref($o1);

if (
$r1->valid()) {
    echo 
"L'objet existe toujours !\n";
    
var_dump($r1->get());
} else {
    echo 
"L'objet est mort !\n";
}

unset(
$o1);

if (
$r1->valid()) {
    echo 
"L'objet existe toujours !\n";
    
var_dump($r1->get());
} else {
    echo 
"L'objet est mort !\n";
}
?>

L'exemple ci-dessus va afficher :

L'objet existe toujours !
object(MyClass)#1 (0) {
}
L'objet est mort !
Object is dead!



add a note add a note User Contributed Notes Introduction
There are no user contributed notes for this page.

 
show source | credits | sitemap | contact | advertising | mirror sites