如下为什么会输出1,2,2
$a = range(1, 3);
foreach ($a as &$val) {
}
foreach ($a as $val) {
}
print_r($a);
如下为什么会输出1,2,2
$a = range(1, 3);
foreach ($a as &$val) {
}
foreach ($a as $val) {
}
print_r($a);
$arr = [1, 2, 3];
foreach($arr as $k => &$v) {
echo '第'.($k+1).'次循环,$v当前代表第'.($k+1).'个元素的引用,值为'.$v.PHP_EOL;
}
echo PHP_EOL.'循环结束,当前$v是第'.($k+1).'个元素的引用,值为'.$v.PHP_EOL;
echo '$arr数组值为:'.implode(',', $arr).PHP_EOL.PHP_EOL;
echo '$v是数组最后一个元素的引用'.PHP_EOL.PHP_EOL;
foreach($arr as $k => $v) {
echo '第'.($k+1).'次循环,取出第'.($k+1).'个元素的值并将值赋给最后一个元素的引用'.$v.PHP_EOL;
echo '此时数组为: '.implode(',', $arr).PHP_EOL.PHP_EOL;
}
echo '循环结束,$arr数组值为:'.implode(',', $arr).PHP_EOL;
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答1.4k 阅读✓ 已解决
798 阅读
649 阅读
这个图应该能让你明白
http://img.my.csdn.net/upload...