Maison >développement back-end >Problème PHP >Comprendre profondément la différence entre le passage par valeur et le passage par référence en PHP
La différence entre le passage de valeur PHP et le passage de référence. Quand passer par valeur et quand passer par référence
(1) Passer par valeur : toute modification apportée à la valeur dans la portée de la fonction sera ignorée en dehors de la fonction
(2) Passer par référence : Portée de la fonction Toute modification apportée à la valeur interne reflétera également ces modifications en dehors de la fonction
(3) Avantages et inconvénients :
A : Lors du passage par valeur, PHP doit copier la valeur. Surtout pour les chaînes et les objets volumineux, cela peut s'avérer une opération coûteuse.
B. Le passage par référence ne nécessite pas de copier la valeur, ce qui est très bon pour améliorer les performances.
<?php header('content-type:text/html;charset=utf-8'); //探讨一下 array , null, 对象 ,资源的默认传递方式 // 结论 (1) array 默认是值传递,通过加 & 可以引用传递 // (2) null 默认是值传递,通过加 & 可以引用传递 // (3) 资源 是值传递.通过加 & 可以引用传递 // (4) 对象默认也是值传递,但是对象值传递是对象标识符 $hero = array('no1'=>'蝙蝠侠', 'no2'=>'超人'); $hero2 = &$hero; $hero2['no1'] = '蜘蛛侠'; echo '<pre class="brush:php;toolbar:false">'; var_dump($hero); var_dump($hero2); $a = null; $b = &$a; $b = 'abc'; var_dump($a, $b);
Tutoriel vidéo recommandé : Tutoriel vidéo PHP
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!