Наше прошлое 20072009201120132014
г. Москва, ул. Гостиничная, д. 7А. кор.2
8 (499) 404-26-56
пн-пт 11:00 - 19:00
 

Модификаторы доступа | Классы в PHP. Часть 4

Модификаторы доступа в php нужны для скрытия свойств и методов класса, от класса потомка или от внешнего мира. В предыдущих уроках вы наверняка замечали, что при объявлении свойства или метода мы вначале пишем модификатор доступа public, а затем имя переменной или метода (public $_var = "test", public function test()).

В PHP существуют 3 модификатора доступа:

  1. Private – самый закрытый модификатор доступа, свойства и методы объявленные как Private видны только в том классе, в котором они объявлены.
  2. Protected – свойства и методы объявленные как Protected будут видны в классе в котором они объявлены и в классах которые его наследуют.
  3. Public – свойства и методы объявленные как Public будут видны везде.

Модификаторы Private и Protected в основном используется для внутренних работ класса и его потомков. 
Например, при разработке интернет-магазинов, у нас есть класс Basket (Корзина, отвечает за покупку товара). В нем есть метод add. При добавлении товара в корзину методом add, нужно проверить наличие на складе, если на складе есть, то списать 1 единицу товара. Когда мы вызываем метод add, он вначале запускает приватный метод _isWarehouse(есть на складе или нет), и если на складе есть, то запустит private метод _takeWarehouse (взять со склада), и только потом добавит товар в корзину.

Кстати, переменные и методы с модификатором Private, принято название начинать с подчеркивания "_".

На этом мы закончим первую часть уроков по работе с классами, но к ней обязательно вернемся в следующих частях!

Модификаторы доступа в php нужны для скрытия свойств и методов класса, от класса потомка или от внешнего мира. В предыдущих уроках вы наверняка замечали, что при объявлении свойства или метода мы вначале пишем модификатор доступа public, а затем имя переменной или метода (public $_var = "test", public function test()).

Комментарии

Нет комментариев

Заполните все поля

Написать комментарий

Ваше имя

Комментарий