PHP引用考点面试真题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mu_mu111/article/details/80118071
//写出如下程序的输出结果 

$data = ['a','b','c'];
foreach($data as $key => $val) {
    $val = &$data[$key];
} 
程序运行时,每一次循环结束后变量的$data 的值是什么?请解释
程序运行完成后变量$data的值是什么?请解释

第一次循环

$k = 0 , $v = a, $v = &data[0]  $v指向$data[0]

data = ['a', 'b', 'c']

第二次循环

$k = 1, $v = b, 因为$v指向$data[0],所以data[0] = b, v=&data[1]

data = ['b', 'b', 'c']

第三次循环

k = 2, v = c, v指向data[1], data[1] = c 

data = ['b', 'c', 'c']

猜你喜欢

转载自blog.csdn.net/mu_mu111/article/details/80118071