第10章 オブジェクト指向構文 / 第5回 模擬試験
PHPのオブジェクトの複製(クローン)に関する次の記述のうち、正しいものはどれか。
オブジェクトを複製するには`clone`キーワードを使用する。
正解
オブジェクトの代入(`$b = $a;`)は、常にオブジェクトを複製(クローン)する。
PHPにはオブジェクトを複製する仕組みが存在しない。
`clone`キーワードは、プロパティが配列型の場合には使用できない。
解説
PHPのオブジェクトは代入時にはコピーされず、同じインスタンスへの参照が共有されます。明示的に複製したい場合は`clone $obj`を使用します。(参照: 独習PHP 第4版 第10章 オブジェクト指向構文 10.6.1節 オブジェクトの代入 p.533〜534)