エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
クローンを作るための__cloneってメソッドがあるらしいけど、あんまり調べずに、C#の感覚で使ってたら、... クローンを作るための__cloneってメソッドがあるらしいけど、あんまり調べずに、C#の感覚で使ってたら、全然違ってハマりましたよ、という話。ましたっていうか現在進行形だけど。 <?php $obj2 = clone $obj1; ?> ってやると__cloneなるメソッドが呼ばれるらしいけど、呼ばれる__cloneメソッドは、$obj1ではなく$obj2の__cloneらしい。僕はてっきり$obj1のメソッドが自分のクローンを作って戻り値で渡してるんだと思ってた。例えば、こんな感じ。 <?php class Foo { priate $bar; public __construct() { $this->bar = new Bar(); } // 間違った __clone の実装 public __clone() { $clone = new Foo(); $clone->bar = c