要了解对象在内存中存在形式,首先说明一下内存分配情况:
栈:基本数据类型、 局部变量、类的引用(指向堆空间段)
堆:堆区主要存放不能固定大小的变量值,如对象或数组的值
代码段:函数 运行的代码
数据段:字符串常量 全局变量 静态变量
当对象赋值给变量时是怎么传递的呢?先看以下代码:
<?php
class Person
{
public $name;
public $age;
}
$p1 = new Person();
$p1->name = '小明';
$p1->age = 20;
$p2 = $p1;
$p2->name = '小花';
echo $p1->name;
echo $p2->name;
?>
分析图如下:
对象传入函数的时候是传入值还是传入地址呢?
<?PHP
class Person
{
public $name;
public $age;
}
$p1=new Person();
$p1->name="小明";
$