Использование функции конструктора в классах на PHP
Начиная с версии 5.0 в PHP появились возможности объектно-ориентированного программирования. Объектно-ориентированное программирование - одна из самых популярных парадигм программирования, основанная на концепции объектов и классов. PHP OOP позволяет структурировать сложное приложение в более простую и удобную в обслуживании структуру.
Что такое конструктор и зачем он нам нужен?
Причина, по которой вы хотите создать класс, заключается в создании объектов. Однако, чтобы действительно создать объект, в вашем классе должна быть функция-конструктор. Вы можете представить себе конструктор как функцию, которая создает объект для класса.
Как написать функцию-конструктор
Вы объявляете ее таким же образом, как и другие функции. Чисто технически вы можете вызывать конструктор вручную, но это не очень хорошая идея. Приведенный ниже код добавляет конструктор в класс, мы добавляем его в тело класса:
public function __construct($parameter1, $parameter2...) {
$this->property1=$parameter1;
$this->property2=$parameter2;
}
Итак, происходит следующее: каждый раз, когда вы создаете объект (и автоматически вызываете конструктор), вы создаете новый экземпляр класса, и тогда значение property1 класса будет равно значению $parameter1, а свойство property2 будет равно значению parameter2 (и так далее для остальных параметров).
Обычно нам нужно, чтобы наш код автоматически вызывал конструктор при создании объекта.
$a = new A("param1", "param2");
Имейте в виду, что приведенный выше код уже вызывает функцию-конструктор класса A для нас. Нам не нужно отдельно вызывать функцию-конструктор, поскольку это делается автоматически, когда мы используем $a= new A("param1", "param2"); для создания экземпляра A, который равен $a.
И, конечно же, значение свойства $a1 равно "param1", а значение property2 равно "param2".
Пример класса с конструктором:
<?php
class A {
private property1;
private property2;
public function construct($param1, $param2) {
$this->property1 = $param1;
$this->property2 = $param2;
}
public function prop1() {
return $this->property1;
}
public function prop2() {
return $this->property2;
}
}
?>
Одним из преимуществ PHP является то, что он поддерживает перегрузку. Это означает, что функция может быть реализована несколькими способами.
Комментарии
Для того чтобы оставить свое мнение, необходимо зарегистрироваться на сайте