Menu
CoddyTech

Membuat Exception Kustom

Termasuk bagian Logika dan Alur dalam perjalanan PHP di Coddy. Pelajaran 56 dari 68.

Meskipun class bawaan PHP Exception berfungsi dengan baik untuk penanganan error umum, membuat class exception khusus sendiri akan memberikan pesan error yang jauh lebih spesifik dan bermakna. Exception khusus membantumu membedakan berbagai jenis masalah dalam kodemu dan menanganinya dengan tepat.

Untuk membuat exception khusus, kamu memperluas class dasar Exception milik PHP dengan menggunakan kata kunci extends. Pewarisan ini memberi exception khususmu semua fungsionalitas exception standar sekaligus memungkinkanmu menambahkan perilaku khusus atau sekadar memberikan nama yang lebih deskriptif.

<?php
class InvalidEmailException extends Exception {
    // class ini boleh kosong karena mewarisi semuanya dari Exception
}

// Kamu juga bisa menambahkan property atau method khusus
class CustomException extends Exception {
    public function getCustomMessage() {
        return "Custom error: " . $this->getMessage();
    }
}
?>

Kekuatan exception kustom terletak pada namanya yang deskriptif dan kemampuannya untuk menangkap tipe exception tertentu. Daripada menangkap Exception yang umum, kamu bisa menangkap InvalidEmailException, DatabaseConnectionException, atau exception kustom lain yang kamu buat. Ini membuat penanganan error-mu lebih tepat dan kodemu lebih mudah dipelihara.

challenge icon

Tantangan

Mudah

Kamu akan menerima satu input: sebuah string yang merepresentasikan nama class exception. Input ini berupa satu kata yang akan digunakan sebagai nama class exception kustommu (contoh: NegativeBalanceException atau InvalidUsernameException).

Baca input tersebut dan buat class exception kustom menggunakan nama yang diberikan. Class exception kustommu harus mewarisi class dasar Exception milik PHP. Setelah membuat class, cetak "Custom exception created: " diikuti nama class yang kamu terima sebagai input.

Format input: Satu baris berisi string yang merepresentasikan nama class exception (contoh: InvalidAgeException)

Output yang diharapkan: Custom exception created: diikuti nama class exception

Coba sendiri

<?php
// Baca nama class exception
$className = trim(fgets(STDIN));

// TODO: Tulis kodemu di bawah untuk membuat class exception khusus


// Tampilkan hasilnya
echo "Custom exception created: " . $className;
?>
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler PHP online