PHP オブジェクト指向の問題
次のコードを見てください。非常に簡単ですので、少し時間を取って見てください:
<br />class person{ <br /> public $name;<br /> public function __construct(){<br /> $this->$name='Tom'; //代码1<br /> }<br />}<br />$a=new person();<br />echo $a->name;<br />
上記のコードを実行すると、' 「変数は未定義です」というメッセージが報告されます。「エラー。
なぜこのエラーが報告されるのですか?
コード 1 を $this->name='Tom' に置き換えると、エラーは報告されません
ここでのドル記号の特別な意味は何ですか? ドル記号なしとドル記号の違いは何ですか?
ありがとうございます。
-----解決策のアイデア------ ------------ ----それでは教えてください:
$name と $$name の違い
------解決策のアイデア --------- -------------$this->name クラス
$this->の name 属性。 $name クラスの $name 属性。最初に変数 $name を定義していないため、当然エラーが報告されます。
------解決策----------------------変数 variable
If $ name = 'hello'
$this->$name は $this->hello
と同等です