> For the complete documentation index, see [llms.txt](https://learn.devlabss.my.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.devlabss.my.id/php/bab-7-php-oop-dasar/7.3-constructor-and-destructor.md).

# 7.3 Constructor & Destructor

Constructor dipanggil saat object dibuat. Destructor dipanggil saat object selesai digunakan.

Bagian ini membantu Anda memahami kapan keduanya dipakai.

### Tujuan belajar

Setelah mempelajari bagian ini, Anda diharapkan bisa:

* memahami fungsi constructor
* mengenal peran destructor
* mengisi property object saat object dibuat

### Apa itu constructor

Constructor adalah method khusus yang berjalan otomatis saat object dibuat.

Di PHP, constructor ditulis dengan nama `__construct()`.

### Contoh constructor

```php
<?php
class Siswa {
    public $nama;

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

$siswa1 = new Siswa("Rina");
echo $siswa1->nama;
?>
```

Dengan constructor, Anda bisa langsung memberi nilai saat object dibuat.

### Apa itu destructor

Destructor adalah method khusus yang berjalan saat object selesai dipakai.

Di PHP, destructor ditulis dengan nama `__destruct()`.

### Contoh destructor

```php
<?php
class Siswa {
    public function __destruct() {
        echo "Object selesai digunakan";
    }
}

$siswa1 = new Siswa();
?>
```

Untuk tahap dasar, fokus utama Anda cukup pada constructor dulu.

Destructor cukup dikenali sebagai bagian dari siklus hidup object.

### Kapan constructor dipakai

Constructor sangat berguna saat:

* object butuh data awal
* Anda ingin penulisan object lebih singkat
* pengisian property dilakukan sejak awal

### Kesalahan umum

* salah menulis nama `__construct()`
* lupa mengirim data saat membuat object
* bingung membedakan constructor dengan method biasa

### Latihan singkat

Buat class `Produk` yang:

* punya property `nama`
* punya constructor untuk mengisi `nama`

Lalu buat satu object dari class tersebut.

### Poin evaluasi bab 7.3.

Pastikan Anda sudah memahami poin berikut:

* Saya paham constructor berjalan saat object dibuat.
* Saya tahu peran dasar destructor.
* Saya bisa mengisi property lewat constructor.
* Saya bisa membaca alur pembuatan object dengan lebih jelas.

Jika semua sudah jelas, lanjut ke [7.4 Access Modifiers](/php/bab-7-php-oop-dasar/7.4-access-modifiers.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.devlabss.my.id/php/bab-7-php-oop-dasar/7.3-constructor-and-destructor.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
