私は魔法のメソッド__GETと__SETを学ぼうとしています。今私は__GETメソッドに取り組んでいます。
私はアクセスできませんプライベートプロパティのエラーです。私は何が起こっているのかわからないんだけど
<?php
class getset {
private $name;
public function __set($property, $value) {
if((property_exists($this, $property))) {
$this->$property = $value;
echo "Successfully updated {$property} to {$value}";
} else {
echo "This failed.";
}
}
}
getset::$name = 'Thomas';
?>
:
は、ここに私のコードです。私は__SET関数のパラメータを見てきました。私はそれを正しくフォローしているようです。
私は何が起こっているのか分かりません。ここに私の完全なコードは次のとおりです。
Fatal error: Uncaught Error: Undefined class constant 'name' in C:\xampp\htdocs\OOP Lessons\Classes\getset.inc.php:22 Stack trace: #0 {main} thrown in C:\xampp\htdocs\OOP Lessons\Classes\getset.inc.php on line 22
その行は次のようになります。ここでは
getset::$name = 'Thomas';
あなたは '$ name'に値を割り当てていますか? –
プライベートプロパティはクラスの外部からアクセスすることができないので、privateを呼び出しました –
@PraveenM申し訳ありません、私のgetetの行は 'getset :: $ name = 'Thomas';'私はそれを編集しました。 –