PHP引用变量

简介PHP引用变量
/*
* 1.引用变量的概念和定义方式?
* 答:在php中引用意味着用不同的名字访问同一个变量内容,使用&符号
*/


//程序执行完后,$arr的值是什么?
$arr = ['a', 'b', 'c'];
foreach ($arr as $key => $value ) {
   $value = &$arr[$key];
}


解析:

$arr = ['a', 'b', 'c'];
foreach ($arr as $key => $value ) {

   //$value = 'a';
   //$value = &$arr[$key];
   //第一次循环,$value = a $value$arr[0]指向同一个内存空间,此时$arr = ['a', 'b', 'c'];


   //$value = 'b';
   //$value = &$arr[$key];
   //第二次循环,$value = b ,由于之前$value$arr[0]指向同一个内存空间,并且之前这块内存空间的值为a,由于第二次循环的$value=b,所以$arr[0]等于b,此时$arr = ['b', 'b', 'c'];
   //然后将$value$arr[1]指向同一个内存空间,也就是$value$arr[1]的值都等于b


   //$value = 'c';
   //$value = &$arr[$key];
   //第三次循环,$value = c ,由于之前$value$arr[1]指向同一个内存空间,并且之前这块内存空间的值为b,由于第三次循环的$value=c,所以$arr[1]等于c,此时$arr = ['b', 'c', 'c'];
   //然后将$value$arr[2]指向同一个内存空间,也就是$value$arr[2]的值都等于c


}
var_dump($arr);


 

文章评论

共有0条评论来说两句吧...

用户名:

验证码:

Top