[PHP-users 20197]コピーせずにリファレンス渡しになる
奥村
okuran_php_ml @ hotmail.com
2004年 2月 2日 (月) 20:02:53 JST
お世話になります。奥村と申します。
以下のコードを実行すると「bbb」が返ってきます。
Class test {
var $Val;
Function setVal ($pVal) {
$this->Val = $pVal;
}
Function getVal () {
Return $this->Val;
}
}
$ObjTest = new test();
$ObjTest->setVal("aaa");
$Val =& $ObjTest->getVal();
$ObjTestCopy = $ObjTest;
$ObjTestCopy->setVal("bbb");
Echo $Val;
マニュアルにもあるように「$ObjTestCopy = $ObjTest;」では
コピーが生成されるはずなので「aaa」が返ってくると思っていたのですが、
「bbb」が返ってくるのでビックリしています。
この動作は正しいのでしょうか?
テスト環境は
php 4.3.4
apache 1.3.22
TurboLinux 7
です。
ご教授宜しくお願いします。
PHP-users メーリングリストの案内