<?php
$arr1 = array('吕布', '赵云', '典韦');
end($arr1);
next($arr1);//非法了
$arr2 = $arr1;//值传递
//使用的一个数组(指针非法的那个数组)
//var_dump($arr2);
var_dump(current($arr1));
echo '<br>';
var_dump(current($arr2));
$arr2[] = '关羽';//$arr2 改了, 开辟新空间存新数组,让$arr2使用新空间,指针被初始化
//var_dump(current($arr1));
//var_dump(current($arr2));
echo '<hr>';
$arr1 = array('吕布', '赵云', '典韦');
foreach($arr1 as $key => $value) {//$copy_arr1 = $arr1
var_dump($key, $value);
if($key == 0) {
$arr1[] = 'hero';
}
echo '<br>';
}
var_dump(current($arr1));
//测试内存使用量
echo memory_get_usage();
$v1 = 10;//体积比较大的变量
//测试内存使用量,明显增大
$v2 = $v1;
//测试内存使用量,不会明显增大
$v1 = 20;
//测试内存使用量,会明显增加
//memory_get_usage();数组指针特例-写时复制cow(copy on write)
最新推荐文章于 2022-07-06 19:01:20 发布
本文探讨了PHP中数组操作的细节,包括数组遍历、指针管理、内存使用量测试,以及值传递与引用的区别。同时介绍了如何通过内存使用量测试来理解变量对内存的影响。
913

被折叠的 条评论
为什么被折叠?



