PHP数组传递是值传递而非引用传递概念纠正_PHP
Jun 01, 2016 pm 12:08 PM
在调用函数时通过将PHP数组作为实参赋给形参,在函数中修改,并不会影响到数组本身。
说明此过程中的传递为值传递,数组变量并非是指向此数组本身的引用,PHP数组本身以值的形式存在,同时形参是对数组的拷贝。
这点与其他一些语言不同(如c、Js等)很不相同,值得注意!
复制代码 代码如下:
$arr = array(
'name' => 'corn',
'age' => '24',
);
test_arr($arr);
function test_arr($arr){
$arr['name'] = 'qqyumidi';
}
print_r($arr); //result: Array ( [name] => corn [age] => 24 )
Js代码如下:
复制代码 代码如下:
var arr = new Array('corn', '24');
test_arr(arr);
function test_arr(arr){
arr[0] = 'qqyumidi';
}
console.log(arr); //result:["qqyumidi", "24"]

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Existe-t-il un passage par référence dans le langage Go ?

Démystifier le passage par valeur et le passage par référence dans les appels de fonction PHP

Comment comprendre correctement la méthode de transmission de valeur en PHP

Que sont le passage par valeur et le passage par référence

Analyse détaillée de la différence entre le passage de valeur et le passage de référence en Java

Quelle est la différence entre passer par valeur et passer par référence en Java

La différence entre le pointeur de structure et le transfert de valeur de structure dans les fonctions Golang

Étude approfondie des différences entre pass-by-value et pass-by-reference en Java et leur impact
