TGViewer
PHP | Вопросы собесов PHP | Вопросы собесов @easy_php_ru · 2.3K subscribers
Post #1819 470
🤔 Какие модификаторы видимости есть в РНР?

В PHP есть три основных модификатора видимости для свойств и методов классов: public, protected и private. Они определяют, какой код имеет доступ к этим свойствам и методам.

🟠`public` (публичный)
Свойства и методы, объявленные как public, доступны отовсюду - как изнутри класса, так и извне, а также из наследуемых классов.
class MyClass {
public $publicProperty = 'Public';

public function publicMethod() {
echo 'This is a public method';
}
}

$obj = new MyClass();
echo $obj->publicProperty; // Выведет: Public
$obj->publicMethod(); // Выведет: This is a public method


🟠`protected` (защищённый)
Свойства и методы, объявленные как protected, доступны только внутри класса и в классах-наследниках. Они недоступны для внешнего кода.
class MyClass {
protected $protectedProperty = 'Protected';

protected function protectedMethod() {
echo 'This is a protected method';
}
}

class ChildClass extends MyClass {
public function accessProtected() {
echo $this->protectedProperty; // Выведет: Protected
$this->protectedMethod(); // Выведет: This is a protected method
}
}

$obj = new ChildClass();
$obj->accessProtected();


🟠`private` (приватный)
Свойства и методы, объявленные как private, доступны только внутри самого класса. Они недоступны ни для внешнего кода, ни для классов-наследников.
class MyClass {
private $privateProperty = 'Private';

private function privateMethod() {
echo 'This is a private method';
}

public function accessPrivate() {
echo $this->privateProperty; // Выведет: Private
$this->privateMethod(); // Выведет: This is a private method
}
}

$obj = new MyClass();
$obj->accessPrivate();


🚩Зачем нужны модификаторы видимости

🟠Инкапсуляция
Модификаторы видимости помогают скрывать внутреннее состояние и детали реализации объекта, предоставляя только необходимые интерфейсы для взаимодействия.
🟠Безопасность
Они защищают данные от неконтролируемого доступа и изменения, что повышает надежность и безопасность кода.
🟠Поддержка и развитие кода
Позволяют контролировать доступ к методам и свойствам, что упрощает изменение и расширение кода без риска нарушить существующую функциональность.

Ставь 👍 и забирай 📚 Базу знаний
  • 👍 2
More from @easy_php_ru
  1. Oct 18, 2026🤔 Какой синтаксис у заголовков? Заголовки в языках и разметки часто используются для указ…
  2. Oct 17, 2026🤔 Что такое шифрование? Это процесс преобразования данных в защищённый формат (шифртекст)…
  3. Oct 17, 2026🤔 Зачем использовать Rest , если есть Soup? SOAP (Simple Object Access Protocol) и REST (…
  4. Oct 16, 2026🤔 Какие типы БД бывают? Базы данных делятся на реляционные (SQL) и нереляционные (NoSQL).…
  5. Oct 16, 2026🤔 Что такое агрегат? Агрегат – это термин, часто используемый в области баз данных и прог…
  6. Oct 15, 2026🤔 Что такое замыкание? Это функция, которая «захватывает» переменные из внешней области в…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →