Область видимості


У попередньому уроці ми могли використовувати ключове слово public перед змінною або класом. Слова public, private, protected визначають область видимості змінної або класу.

public – елементи доступні всім
private – елементи не доступні ззовні (за межами класу)
protected – елементи доступні тільки класу і всім його нащадкам (буде розглянуто)

Приклад:

<?php
class FirstClass {
     public $var1 = "public";
     private $var2 = "private";
     protected $var3 = "protected";

     public function func1() {
          echo $this->var1;
          echo $this->var2;
          echo $this->var3; 
     }

     private function func2() {
     }

     protected function func3() {
     }
}

$instance = new FirstClass();

$instance->var1; // працює
$instance->func1(); // працює, результат: public private protected
$instance->var2; // помилка
$instance->var3; // помилка
$instance->func2(); // помилка
$instance->func3(); // помилка

?>

Методи, де визначення області видимості відсутнє, визначаються як public.