В данной статье хотелось бы затронуть тему ООП. Будет полезно для новичков.
Что такое ООП?
ООП – это Объектно-Ориентированное Программирование. При помощи данной методологии можно разбивать логику программы на классы и объекты, где объект является экземпляром определённого класса. Чуть ниже вы всё поймете, давайте уже писать код :).
PHP как создать класс?
Как и в жизни, в программирование, объект – это некое описание чего-либо. Давайте создадим автомобиль при помощи кода, опишем его свойства и методы:
class Car { //... }
Классы принято именовать с большой буквы. Желательно, не писать в множественном числе (Products, Cars). Сам класс вынесем в отдельный файл и назовем его car.php, а в индексной странице подключим его при помощи include:
include 'car.php';
PHP как создать свойства объекта (переменные)
У нашей машины могут быть свойства, которые будут меняться при создании разных объектов. Машина может быть марки BMW, может быть Honda. У нее может быть разный цвет, разная скорость, разное количество дверей. Создадим же свойства объекта:
class Car { public $brand; public $color; public $speed; }
Пока что не обращайте внимания на приставку public, о ней мы поговорим в следующих частях статьи. Таким образом мы описали первые свойства объекта. Давайте выведем результат на экран.
include 'car.php'; $car = new Car(); print_r($car);
Получим:
Car Object ( [brand] => [color] => [speed] => )
Для того чтобы создать новый объект используем приставку new.
Как перезаписать свойства объекта в PHP?
Для этого пишем такой код:
$car = new Car(); $car->brand = 'BMW'; $car->color = 'blue';
Мы перезаписали наши свойства, и результат будет таким:
Car Object ( [brand] => BMW [color] => blue [speed] => )
Параметр скорости мы решили оставить как был до этого. Если вы хотите задать значения по умолчанию, вы можете написать их прям в классе:
public $brand = 'Honda';
Теперь, по умолчанию все созданные машины будут бренда Honda, а наша запись перезапишет это свойство в BMW. А что если нам понадобятся константы? Константы в данном случае не будут привязаны к объекту, и сейчас мы их не будем рассматривать.
В чем минус такого кода? Если по задаче нужно создать много машин и выбрать для каждой из них свои свойства, то получится очень много строчек. Согласитесь, было бы куда удобнее будь у нас 1 строка, как в функции, в которой мы передаем параметры :). И у нас есть такая возможность. В следующей части вы узнаете про Конструктор и Деструктор.
Читать далее:
PHP — Основы ООП. Создаем Методы, Конструктор и деструктор. Часть 2