Références de v...LOGIN

Références de variables pour les constantes et variables PHP

Référence variable

Référence variable De nombreux enseignants aiment utiliser des pointeurs en langage C pour expliquer. En tant que personnes possédant de nombreuses années d'expérience en développement et en enseignement, la plupart des personnes qui apprennent PHP ne comprennent pas du tout le langage C.

Utiliser un pointeur en langage C pour expliquer la référence à une variable, nous pensons que c'est suffisant. De plus, cela n’est pas propice à l’apprentissage par des amis qui n’ont pas de bases en langage C.

Concernant les points de connaissance de référence variable, veuillez utiliser notre explication comme base de compréhension !

Comparons les résultats d'exécution des deux morceaux de code :
Il n'y a aucune différence dans le premier morceau de code. C'est exactement le même que notre code PHP original :

<?php

$fo = 5;
//$fo的值为5,将5赋值
$bar = $fo;
//$bar的值原来为5,现在将值改为6
$bar = 6;
//$bar的结果为6
echo $bar.'<br />';
//$fo的结果为5
echo $fo.'<br />';

?>

Le deuxième morceau de code :

<?php

$fo = 5;
//注意,加上了一个&符哟
$bar = &$fo;

$bar = 6;
//$bar的结果为6
echo $bar.'<br />';
//$fo的结果为6
echo $fo.'<br />';

?>

Pourquoi les deux résultats deviennent-ils 6 ?

Je vous donne souvent des exemples comme celui-ci. On peut l'imaginer ainsi : à un nom de variable correspond une valeur de donnée. Comme indiqué ci-dessous :

2015-08-02_55bdc64daf9e3.png

et l'ajout de & (après le caractère et) pointe les variables vers le même espace de stockage, comme indiqué ci-dessous :

2015-08-02_55bdc68312f9b.png

C'est-à-dire que peu importe la façon dont la valeur de $fo ou $bar change, $fo change en $bar et $bar change, $fo changera également.

Laissez-moi vous donner un exemple peu fiable pour vous aider à comprendre :
Vous avez un chiot à la maison appelé Wangcai. Il y a un autre chiot nommé Goudan. Un jour, tu as mangé les œufs du chien. On donne le nom Goudan à Wangcai

Ensuite, que vous frappiez Goudan ou Wangcai, vous frappez le même chien.


Remarque : Si vous comprenez, comprenez et connaissez les pointeurs du langage C. Vous pouvez utiliser des pointeurs pour le comprendre vous-même, ce qui dépasse le cadre de cet article.

section suivante
<?php $fo = 5; //注意,加上了一个&符哟 $bar = &$fo; $bar = 6; //$bar的结果为6 echo $bar.'<br />'; //$fo的结果为6 echo $fo.'<br />'; ?>
soumettreRéinitialiser le code
chapitredidacticiel