Учебник по ООП в PHP8
Основи
Въведение
Класове и обекти
Свойства
Методи
Параметри на методите
Свойства вътре в класовете
Методи вътре в класовете
Конструктор
Свойства чрез параметри на конструктора
Частни свойства
Частни методи
Гетъри на свойства
Сетъри на свойства
Предимства на сетърите и гетърите
Разширени
Файлове на класове
Вериги от методи в клас
Клас като набор от методи
Масиви от обекти
Обекти вътре в класове
Оператор за безопасно извличане
Оператор за безопасно извличане във вериги
Манипулация на обекти в класове
Подаване по референция
Оператор instanceof
Наследяване
Наследяване на класове
Наследяване на публични методи
Методи на потомъка
Предефиниране на методите на родителя
Извикване на предефиниран метод
Конструктор при наследяване
Частни методи при наследяване
Частни свойства при наследяване
Проблем с частните свойства при наследяване
Защитени методи
Защитени свойства
Оператор instanceof и наследяване
Извиквания
Име на свойство от променлива
Име на свойство от масив
Име на свойство от асоциативен масив
Име на свойство от функция
Име на свойство от обект
Метод от променлива
Извикване след създаване
Static
Статични методи
Статични методи вътре в класа
Статични свойства
Статично свойство вътре в класа
Обръщане през клас и обект
Комбинация със static
Статични методи и $this
Пример
Функции
Получаване на име на клас
Получаване на методите на клас
Получаване на свойствата на клас
Получаване на свойствата на обект
Проверка за съществуване на клас
Проверка за съществуване на метод
Проверка за съществуване на свойство
Получаване на родителски клас
Проверка на наследяването на клас
Проверка на принадлежността на обект
Получаване на всички декларирани класове
Abstract
Интерфейси
Въведение в интерфейсите
Практика върху прилагане на интерфейси
Правила за именуване на интерфейси
Прилагане на интерфейси
Параметри на методи в интерфейса
Деклариране на конструктор в интерфейс
Наследяване на интерфейси един от друг
Интерфейси и instanceof
Имплементиране на няколко интерфейса
Наследяване от клас и имплементиране на интерфейс
Константи в интерфейси
Функции за интерфейси
Трейтове
Въведение в трейтове
Няколко трейта
Конфликти на методи
Модификатори на достъп
Промяна на правата за достъп до методите на трейта
Приоритет на методите
Абстрактни методи
Трейтове в трейтове
Функции за трейтове
Магия
Въведение
Метод __toString
Получаване на свойства
Свойства само за четене
Четене на несъществуващо свойство
Задаване на свойства
Запис на несъществуващо свойство
Проверка на свойства при запис
Практика
Именни пространства и автозареждане
Въведение в именни пространства
Синтаксис на именните пространства
Подпространства от имена
Опростено обръщение
Именни пространства във файлове
Относителни пътища в именно пространство
Команда use
Свързване на няколко класа
Команда use и относителни пътища
Псевдоними на класове
Стандартно автозареждане на класове
Правила за автозареждане
Собствено автозареждане на класове