by shigemk2

当面は技術的なことしか書かない

private変数

アクセス修飾子- クラスの定義 - PHP入門

PHPにもprivate変数があり、メンバ変数を定義するときにprivateをつけると、
そのメンバ変数をprivateにすることが出来る

<?php
class Hoge {
  public $fuga = 'fuga';
  private $bar = 'bar';
}

$hoge = new Hoge();
print_r($hoge->fuga . PHP_EOL);
print_r($hoge->bar . PHP_EOL);

とすると、結果は

fuga
PHP Fatal error: Cannot access private property Hoge::$bar

となります。

<?php
class Hoge {
  public $fuga = 'fuga';
  private $bar = 'bar';

  function getBar() {
    return $this->bar;
  }
}

$hoge = new Hoge();
print_r($hoge->fuga . PHP_EOL);
print_r($hoge->getBar() . PHP_EOL);

とすると、

fuga
bar

となります。