> 對象傳值本質(zhì)上是引用傳值,將一個對象變量($a)賦值給另個變量($b),實際上是將$a存儲的對象內(nèi)存引用地址賦值$b,此時兩個變量指向的就是一個對象。其中一個變量發(fā)送改變,另一個也會跟著改變。和引用變量一個道理。 #### 1. 對象傳值示例 --- **對象傳值本質(zhì)上就是引用傳值** ```php $a = new User; $b = $a;//對象傳值 var_dump($a, $b); $b->name = '張三'; var_dump($a, $b); class User { } ``` **運行結(jié)果,其實第一次打印就可以看出來`$a` 和 `$b` 是一個對象,因為對象標識符一樣(都是 1)**  #### 2. 解釋說明 --- 如果將一個對象賦值給變量($a),`$a` 實際上存的是`對象的內(nèi)存引用地址`,而不是對象 **對象存在堆內(nèi)存中,內(nèi)存引用地址存在棧內(nèi)存中**,所以將 `$a` 賦值給另一個變量 `$b`, 實際上是將 $a 存的`對象的內(nèi)存引用地址`賦值給了 $b,也就是 $a 和 $b 存的是同一個引用地址, 所以兩個變量實際上是一個對象,因此 $b 發(fā)生改變, $a 也跟著改變