Salut !
je ne comprend pas cet exemple dans la doc :
a ce que j'ai cru comprendre $assigned pointe vers le meme objet que $instance, donc je vois pas la difference entre :affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <?php $assigned = $instance; $reference =& $instance; $instance->var = '$assigned aura cette valeur'; $instance = null; // $instance et $reference deviennent null var_dump($instance); var_dump($reference); var_dump($assigned); ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 NULL NULL object(SimpleClass)#1 (1) { ["var"]=> string(30) "$assigned aura cette valeur" }
$assigned = $instance;
et
$reference =& $instance;
et ne comprend pas plus pourquoi :
$instance->var = 'xx';
va modifier $assigned mais pas :
$instance = null;
ce que je pourrais supposer c'est que "$instance->var =" modifie l'objet pointé quand $instance = modifie le pointeur (et donc pas l'objet) mais alors pourquoi a ce moment là $reference ne reagit pas de la meme maniere ? :/
Partager