La référence Foreach transmet l'adresse en PHP

小云云
Libérer: 2023-03-22 06:16:02
original
3182 Les gens l'ont consulté

Cet article partage principalement avec vous l'adresse de transfert de référence foreach en PHP. Comprendre ce problème nécessite trois points de connaissances. J'espère que cela pourra aider tout le monde.

1 Affectation normale et affectation de référence en php

Le nom de la variable est stocké dans la pile mémoire, qui pointe vers l'adresse de la mémoire spécifique dans le tas. Recherchez la mémoire dans le tas. le nom de la variable ;

Valeur normale passant, après avoir passé la valeur, ce seront des noms d'adresse différents, pointant vers différentes entités de mémoire

Passage de référence, après avoir passé la référence, ce sera différent ; noms d'adresses, mais ils pointent tous vers la même entité mémoire ;Changez l'un d'eux, et l'autre sera également modifié ;

C'est probablement la relation pour plus de détails. , vous pouvez consulter ceci https://www.cnblogs.com/mushan/p /4330386.html


2 Portée des variables

Les variables définies en dehors de toutes les fonctions ont la portée globale ; les variables définies à l'intérieur d'une fonction sont utilisées dans la portée locale. Les variables globales sont accessibles depuis n'importe où dans le script, mais pour accéder aux variables globales dans une fonction, utilisez le mot-clé global. Les variables locales ne sont accessibles qu'à l'intérieur de la fonction.

3  foreach
$arr = array(1,2,3);
foreach($arr as &$v){}
$v 变量未销毁    $arr[2] 与 $v保持索引关系(数组组后一个元素)
foreach ($arr as $v){}
$v 每次获得新值
$arr=array(1,2,&$v); $v=1 数组为 array(1,2,1); 
$arr=array(1,2,&$v); $v=2 数组为 array(1,2,2); 
第三次遍历数组为 array(1,2,2); 
所以结果为 array(1,2,2);
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal