PHP複雜類型一共有兩個 數組(基于鍵值對集合的一種東西) 和類。
基本類型不用說了,想也不用想表現為值類型。
對于兩種複雜類型,下面做兩個執行個體:
1.
$a = array(0);
$b = $a;
$b[] = 1;
var_dump($a);
var_dump($b);
運作結果:
array(1) { [0]=> int(0) } array(2) { [0]=> int(0) [1]=> int(1) }
可見,array表現為值類型。但是如果把第二行改為"$b = &$a;",就能在指派時傳引用了。
2.
Class A { public $a = 0; }
$a = new A();
$b = $a;
$b->a = 1;
var_dump($a->a);
var_dump($b->a);
運作結果:int(1) int(1)
可見,對象表現為引用類型。