検索

ホームページ  >  に質問  >  本文

参照なしでオブジェクトをコピーするにはどうすればよいですか?

<p>PHP5 OOP オブジェクトがデフォルトで参照によって渡されることは十分に文書化されています。これがデフォルトであれば、デフォルト以外でも参照せずにコピーする方法があるような気がしますが、どうでしょうか? ? </p> <pre class="brush:php;toolbar:false;">関数 refObj($object){ foreach($object as &$o){ $o = 'これは ' に変更されます。 $o; } $object を返します。 } $obj = 新しい StdClass; $obj->x = 'x'; $obj->y = 'y'; $x = $obj; プリント_r($x) // オブジェクト(stdClass)#1 (3) { // ["x"]=>string(1) "x" // ["y"]=>string(1) "y" // } // $obj = refObj($obj); // これを行う必要はありません。 refObj($obj); // $obj は参照によって渡されます プリント_r($x) // オブジェクト(stdClass)#1 (3) { // ["x"]=> string(1) "これは x に変わります" // ["y"]=> string(1) "これは y に変わります" // } <p>この時点では、<code>$x</code> が元の <code>$obj</code> であると予想していましたが、もちろんそうではありません。これを行う簡単な方法はありますか、それとも次のようなコードを書かなければなりませんか</p>
P粉805922437P粉805922437463日前448

全員に返信(2)返信します

  • P粉038161873
  • P粉713846879

    P粉7138468792023-08-25 00:31:47

    リーリー

    したがって、次のようになります:

    リーリー

    返事
    0
  • キャンセル返事