Les références de PHP (c'est-à-dire ajouter une esperluette devant les variables, fonctions, objets, etc.) //Le plus important est de supprimer les variables référencées par , mais les variables référencées ne sont pas accessibles. Mais le contenu n'est pas détruit. La signification de référence en PHP est : différents noms accèdent au même contenu de variable
Cet article présente principalement la méthode de retour de la référence . tapez PHP,
<?php $color = 'YellowGreen'; function &getRef() { global $color; return $color; } function getCopy() { global $color; return $color; } $colorRef = &getRef(); $colorRef = 'Blue'; //$colorCopy = getCopy(); //$colorCopy = 'Black'; var_dump($color); var_dump($colorRef); //var_dump($colorCopy);
Exécutez une fois le code ci-dessus et vous comprendrez presque que l'utilisation de &getRef() liera $colorRef à $color, c'est-à-dire que $colorRef et $color sont deux variables Il pointe vers la même valeur. Lorsque vous modifiez l’une des valeurs, l’autre changera également.
Si $color est un tableau, il en va de même. Le code ci-dessus se comporte de la même manière comportement dans n'importe quelle version de PHP4/5.
Le problème se pose lorsque $color est un Objet.
En PHP4, getCopy renverra toujours un objet copié ; &getRef() renvoie une référence.
PHP5 est un peu différent.
Le dernier PHP5.2 se comporte de la même manière que PHP4, getCopy() renvoie une copie et &getRef() renvoie une référence.
Mais certaines versions de PHP5 sont légèrement différentes, comme PHP5.1.6, ce qui montre que getCopy() et &getRef() sont toutes deux des références.
Ici getCopy() et &getRef() sont deux fonctions globales Si elles sont placées dans une classe et deviennent des fonctions membres de la classe, ce sera une autre histoire...
PS : Le retour des références n'améliorera pas les performances, mais parfois cela réduira les performances, alors ne tenez pas pour acquis d'utiliser cette fonctionnalité pour « optimiser » le programme.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!