0

これは非常にばかげた質問ですが、何が悪いのかわかりません。パブリックメソッドでプライベート変数の値を取得できません。私はCodeIgniterを使用しています。

class someClass extends MY_Model {
  private $table = 'sometable';
  public function getTable() {
    return $this->table;
  }
  public function updateTable($data) {
    $this->db->update($this->getTable(), $data);
  }
}

コントローラからこのメソッドを呼び出すと、次のメッセージが表示されます。

Fatal error: Access level to someClass::$table must be public (as in class MY_Model) in /some/path/someclass.php on line 38

私は何を間違えましたか?ありがとうございました。

4

1 に答える 1

6

親クラスMY_Modelはそのフィールドをスコープで宣言しているpublicため、子クラスではそれに従う必要があります。

于 2013-03-15T23:45:33.027 に答える