※この記事は読者によって投稿されたユーザー投稿のため、編集部の見解や意向と異なる場合があります。 また、編集部はこの内容について正確性を保証できません。
ヒューマンリソシア株式会社はコラム「関数仕様編 その8(参照について その5)」を公開しました。 参照の五回目、配列のお話の続きでございます。 端的には、前回ありました「”オブジェクトID”という値を持ち回る事による、クラスインスタンスの参照っぽい動き」と 「変数の参照代入」との違い、に近い内容が今回も発生いたします。 まずはわかりきったサンプルコードで、足場を固めながら進めていきましょう。 $awk = array(1,2,3); $awk2 = $awk; var_dump($awk); var_dump($awk2); copy on writeがあるので厳密には違いますが、基本的には「$awkと$awk2は、copyされた、別々の配列」になります。 ですので、配列操作によって片方を変更しても、もう片方には影響が及びません。 $awk = array(1,2,3); $awk2 = $awk; // $awk[1] = ‘abc'; // var_dump($awk); var_dump($awk2); 結果 array(3) { [0]=> int(1) [1]=> string(3) “abc” [2]=> int(3) } array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) } さて…ここから。 実は、こんなコードを書くと。一部では「………はて???」となるような現実が出てきます。 この続きは以下をご覧くださいhttp://resocia.jp/column/1593/

人気記事トップ10

人気記事ランキングをもっと見る