__construct() w PHP

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Czym jest __construct() w PHP?

__construct() to specjalna metoda klasy w PHP nazywana konstruktorem. Jest uruchamiana automatycznie w momencie tworzenia nowego obiektu za pomocą operatora new.

Konstruktor służy najczęściej do ustawienia wartości początkowych właściwości obiektu, przekazania danych konfiguracyjnych lub wykonania czynności startowych potrzebnych do poprawnego działania obiektu.

Najważniejsze cechy

  • metoda ma dokładną nazwę __construct — z dwoma znakami podkreślenia na początku,
  • wywołuje się automatycznie podczas tworzenia obiektu,
  • może przyjmować argumenty,
  • nie trzeba jej wywoływać ręcznie,
  • występuje wewnątrz klasy.

Przykład

class Uzytkownik {
    public $imie;

    public function __construct($imie) {
        $this->imie = $imie;
    }
}

$u = new Uzytkownik("Anna");
echo $u->imie; // Anna

W powyższym przykładzie instrukcja:

$u = new Uzytkownik("Anna");

tworzy obiekt klasy Uzytkownik. Podczas tworzenia automatycznie uruchamia się metoda __construct(), która zapisuje wartość "Anna" do właściwości $imie.

Typowy błąd egzaminacyjny

W pytaniach egzaminacyjnych mogą pojawić się nieistniejące nazwy, np. __new, __open, __create. W PHP poprawną metodą konstruktora jest zawsze:

__construct()

Do zapamiętania

Konstruktor w PHP to metoda __construct(), która tworzy i inicjalizuje obiekt podczas użycia operatora new.