編集:オブジェクトにビジネスロジックを適用し、他のプロセスで横に移動するためにそのクローンが必要な場合はどうなりますか。異なる結果になる可能性が非常に高いビジネス ロジックをオブジェクトの新しいインスタンスに再適用するか、既存のインスタンスを複製する方が効率的ですか? しかし、$a = $b を実行すると、オブジェクトが参照渡しされるだけでは十分ではありません。
この例を見てみましょう:
$a = new test();
$b = $a;
$b->setSomeProp('test');
$a->setSomeProp('failed');
echo $b->getSomeProp(); //returns 'failed'
と
$a = new test();
$b = unserialize(serialize($a));
$b->setSomeProp('test');
$a->setSomeProp('failed');
echo $b->getSomeProp(); //returns 'test'
参照を置き換えるより良い方法はありますか?