Исключения PHP

Описание интерфейса Throwable:

interface Throwable
{
    public function getMessage(): string; //Получает сообщение ошибки
    public function getCode(): int; //Возвращает код исключения
    public function getFile(): string; //Возвращает файл, в котором произошло исключение
    public function getLine(): int; //Получает строку скрипта, в которой данный объект был выброшен
    public function getTrace(): array; //Возвращает трассировку стека
    public function getTraceAsString(): string; //Получает результаты трассировки стека в виде строки
    public function getPrevious(): Throwable; //Возвращает предыдущий Throwable
    public function __toString(): string; //Получает строковое представление выброшенного объекта
}
Читать далее «Исключения PHP»

Транзакции БД

Транзакцией можно назвать изменения в БД. Соответственно, если выполняется добавление, изменение или удаление данных в таблице, то это и есть выполнение транзакции.

Читать далее «Транзакции БД»

Шардинг данных

Шардинг — позволяет масштабировать работу с данными. Суть шардинга заключается в том чтобы разделить данные таким образом, что бы эти части данных вынести на отдельные сервера. Шардинг бывает двух типов:

Читать далее «Шардинг данных»

Что такое short tags PHP?

В PHP есть тег «<?= » — это short tags, он эквивалентен записи — <? echo

Пример:

<?='Hi my darlings'?>

<!-- эквиваленттно-->

<? echo('Hi my darlings');?>

Для использования короткого тега, нужно в файле php.ini включить использование коротких тегов: short_open_tag = On.

Что такое $this и self в PHP?

$this — это ссылка на текущий объект, self — ссылка на текущий класс.

$this — можно использовать только для не статичных свойств и методов объекта.

self — можно использовать только для статичных методов и свойств класса.

Есть конечно исключения.

Концепция объектно-ориентированного программирования

Парадигма программирования, в основе которой лежат понятия объектов и классов.

Основные принципы ООП — инкапсуляция, наследование, полиморфизм, абстракция.

Читать далее «Концепция объектно-ориентированного программирования»

Трейты PHP

Так как PHP не поддерживает множественное наследование, то для обхода этого ограничения можно использовать Трейты. Трейты — это группировка функционала — методов и свойств, для дальнейшего использования в различных классах.

Читать далее «Трейты PHP»

Что такое замыкания в PHP?

К примеру, мы имеем глобальную переменную, эта переменная доступна из любого участка кода. Соответственно эта переменная может меняться в процессе выполнения скрипта. НО!!! в каком-то участке кода, нам нужно что бы эта переменная была неизменна-статична (запомнила свое состояние). В этом заключается механизм замыкания.

Читать далее «Что такое замыкания в PHP?»