Это первая часть учебника, где я рассказываю про ООП или точнее, объектно ориентированное программирование в PHP, ну и конечно, расскажу, что такое в PHP 7 классы и объекты.
Что такое классы и объекты:
Перед тем как расскажу о том как работать с классами и объектами, что это вообще такое.
Классы в PHP 7:
Сначала расскажу что такое классы.
Класс, это абстрактный тип данных любого языка программирования, как например, числовой тип данных и строковой, также это один из самых важных элементов в ООП, если не самый важный.
Больше про классы особо нечего сказать.
Объекты в PHP 7:
Объекты в PHP 7, да и вообще в любом другом языке, это сущность, которая имеет какие-то атрибуты (свойства), и возможность выполнять действия над ними (методы), как провела объекты принадлежат конкретному классу или нескольким классам.
То есть, к примеру, класс это машина, а мерседес это объект класса машина, как то так.
Базовая работа с ООП:
Теперь надо понять базовые принципы работы с ООП в PHP, это достаточно просто, по крайне мере именно базовая работа.
PHP 7 объявление класса:
Для объявления класса в PHP, вам надо использовать только одно ключевое слово class
.
1 2 3 4 5 6 7 8 9 10 | // Создаём класс User class User { public $name = "Ваня"; // Свойство name // Метод get_name public function get_name () { return $this -> name; } } |
Давайте разберём этот код по подробнее, мы создаём класс с именем User
, создаём внутри него свойство с именем name
, как можете заметить, свойство, это по сути переменная, которая принадлежит к конкретному классу или объекту.
Дальше идёт создание метода get_name
, по сути это функция, там даже используется слово function
, как при создание функции, внутри метода возвращаем свойство name
.
Для этого используем слово $this
, оно обращается к свойству или методу класса, внутри самого класса, после идёт знак ->
, он используется для обращение к элементу класса или объекта, дальше пишем имя свойства или метода, которое хотим получить, в нашем случае это свойство name
.
Обратите внимание: при создание свойства, в название используется знак доллара, как при создание переменной, а при обращению к нему нет.
Что касается слова public
, пока что оно вам не нужно, просто знайте, что его надо писать перед объявлением свойства или метода, поподробнее о нём в другой части учебника.
Как видите, сначала всё достаточно просто, таким образом мы объявили класс.
PHP 7 объявление объекта:
В PHP создание объекта класса, очень простое, для этого используем переменную и слово new
.
1 2 | // Создаём объект класса User $user = new User(); |
Как видите, мы просто создаём переменную, с названием $user
, и типа присваиваем ей класс User
, через слово new
, но на самом деле создаём объект, то есть мы говорим программе, присвой переменной $user
, новый объект класса User
.
Базовая работа с объектом:
Теперь в PHP надо получить свойства класса, а точнее объекта, для этого используем переменную которая хранит в себе объект, и ещё используем знак ->
.
1 2 | // Получаем и выводим свойство name echo $user -> name; |
Вот результат.
Как видите он вывел имя Ваня, но вообще не надо выводить свойство на прямую, так не принято, обычно если надо получить свойство используется метод, который возвращает нужное свойство, у нас как раз есть такой метод.
В PHP вызвать метод класса, то есть объекта, точно также, как получить свойство.
1 2 | // Вызываем метод get_name echo $user -> get_name(); |
Как видите всё просто, результат точно такой же, как и в прошлый раз, когда получали свойство.
Вод вам весь код этой программы.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?php // Создаём класс User class User { public $name = "Ваня"; // Свойство name // Метод get_name public function get_name () { return $this -> name; } } // Создаём объект класса User $user = new User(); // Вызываем метод get_name echo $user -> get_name(); |
Вывод:
Здесь вы узнали что такое классы и объекты в PHP 7, и основы работы с ними, надеюсь вы всё поняли, если же вам кажется этого мало, то это только введение в ООП на PHP.