<?php
$a = ['a', 'b', 'c'];
foreach ($a as $key => $value) {
$a[$key] = &$value;
}
var_dump($a);
/*
输出为什么是这个, 每次循环$value难道是同一个?
array(3) {
[0]=>
&string(1) "c"
[1]=>
&string(1) "c"
[2]=>
&string(1) "c"
}
*/
<?php
$a = ['a', 'b', 'c'];
foreach ($a as $key => $value) {
$a[$key] = &$value;
}
var_dump($a);
/*
输出为什么是这个, 每次循环$value难道是同一个?
array(3) {
[0]=>
&string(1) "c"
[1]=>
&string(1) "c"
[2]=>
&string(1) "c"
}
*/
2 回答1.5k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
2 回答871 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
2 回答930 阅读
1 回答912 阅读
1 回答841 阅读
数组的第一个元素、第二个元素、第三个元素都引用了foreach的临时变量$value,第一次循环$value为'a',第二次循环为'b',第三次循环为'c',所以数组的三个元素都为'c'