Kelas Exception

Kelas Exception merupakan kelas dasar untuk semua pengecualian di PHP. Kelas ini berisi metode-metode dasar untuk bekerja dengan pengecualian: mendapatkan pesan kesalahan, kode kesalahan, file dan baris tempat pengecualian terjadi, serta jejak pemanggilan (call stack). Saat membuat pengecualian, Anda dapat meneruskan pesan, kode kesalahan, dan pengecualian sebelumnya.

Sintaks

phpnew Exception(string $message = "", int $code = 0, Throwable $previous = null);

Contoh

Mari buat dan tangani pengecualian sederhana:

php<?php
  try {
    throw new Exception('Something went wrong', 100);
  } catch (Exception $e) {
    echo 'Error: ' . $e->getMessage();
  }
?>

Hasil eksekusi kode:

php'Error: Something went wrong'

Contoh

Mari gunakan metode-metode utama kelas Exception:

php<?php
  try {
    throw new Exception('Test exception', 123);
  } catch (Exception $e) {
    echo 'Message: ' . $e->getMessage() . "\n";
    echo 'Code: ' . $e->getCode() . "\n";
    echo 'File: ' . $e->getFile() . "\n";
    echo 'Line: ' . $e->getLine() . "\n";
  }
?>

Hasil eksekusi kode (contoh):

php'Message: Test exception
Code: 123
File: /path/to/file.php
Line: 3'

Contoh

Mari dapatkan jejak pemanggilan saat pengecualian:

php<?php
  function test() {
    throw new Exception('Stack trace test');
  }
  
  try {
    test();
  } catch (Exception $e) {
    print_r($e->getTrace());
  }
?>

Hasil eksekusi kode (contoh):

php[
  [
    'file' => '/path/to/file.php',
    'line' => 5,
    'function' => 'test',
    'args' => []
  ]
]

Lihat Juga