phpの初心者となります。
大変恐縮とは存じますが、
下記のように実装した場合、
dataSet()では、配列『$arrayTest』に値は格納できているのに、
dataGet()からは、配列『$arrayTest』に値が入っておりません。
★arryTestの確認2で、値が取得できない理由がわかりません。
何がいけないのでしょうか?
また、ローカル変数でもグローバル変数でも結果は同じとなります。
ご教示頂けますよう宜しくお願い致します。
class php1 { public function testSet() { $clsTest2 = new php2(); $clsTest2->dataSet(); } public function testGet() { $clsTest2 = new php2(); $clsTest2->dataGet(); } } class php2 { private $arrayTest =array(); public function dataSet() { array_push($this->arrayTest,"test0"); array_push($this->arrayTest,"test1"); echo("★arryTestの確認1"."<br>"); print_r($this->arrayTest)."<br>"; } public function dataGet() { echo("★arryTestの確認2"."<br>"); //値が、入っていない print_r($this->arrayTest)."<br>"; } }
[結果]
★arryTestの確認1
Array ([0] => test0[1] => test1 )
★arryTestの確認2
Array ( )
回答1件
あなたの回答
tips
プレビュー