文章目录
一. PHP引用变量考察点
1. PHP的引用变量的概念及定义方式
概念
在PHP中,引用意味着用不同的名字访问同一个变量内容。
定义方式
使用 & 符号
2. 延伸:PHP引用变量的原理
1)赋值
将一个变量的值赋值给另一个变量,其中一个变量的值进行改变,会重新进行拷贝,此时会再开辟一个新的内存空间。
// 1. 定义一个变量
$a = range(0, 1000); // 在内存中开辟一片空间,存储变量a
var_dump(memory_get_usage());
// 2. 定义变量 b,将 a变量的值赋值给 b
$b = $a; // 将变量b 指向 变量a开辟的空间中
var_dump(memory_get_usage());
// 3. 对 a进行修改
$a = range(0, 1000);
var_dump(memory_get_usage());
原理:使用了 COW(Copy On Write)机制 : 对 $a
或 $b
其中一个进行改变,内存空间才会发生改变。
- 在内存中开辟一片空间存储变量a;
- 将变量b 指向 变量a的内存空间中;
- 对变量a进行修改(对a进行写操作),此时会再开辟一片内存空间存储 a 和 a和 a和b(原来的 a 和 a和