Klasse Exception

De klasse Exception vormt de basisklasse voor alle uitzonderingen in PHP. Het bevat de basismethoden voor het werken met uitzonderingen: het ophalen van het foutbericht, foutcode, bestand en regel waar de uitzondering optrad, evenals de callstack. Bij het aanmaken van een uitzondering kunnen een bericht, een foutcode en een vorige uitzondering worden doorgegeven.

Syntaxis

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

Voorbeeld

Laten we een eenvoudige uitzondering maken en afhandelen:

php<?php
  try {
    throw new Exception('Er ging iets mis', 100);
  } catch (Exception $e) {
    echo 'Fout: ' . $e->getMessage();
  }
?>

Resultaat van de code-uitvoering:

php'Fout: Er ging iets mis'

Voorbeeld

Laten we de belangrijkste methoden van de klasse Exception gebruiken:

php<?php
  try {
    throw new Exception('Testuitzondering', 123);
  } catch (Exception $e) {
    echo 'Bericht: ' . $e->getMessage() . "\n";
    echo 'Code: ' . $e->getCode() . "\n";
    echo 'Bestand: ' . $e->getFile() . "\n";
    echo 'Regel: ' . $e->getLine() . "\n";
  }
?>

Resultaat van de code-uitvoering (voorbeeld):

php'Bericht: Testuitzondering
Code: 123
Bestand: /pad/naar/bestand.php
Regel: 3'

Voorbeeld

Laten we de callstack ophalen bij een uitzondering:

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

Resultaat van de code-uitvoering (voorbeeld):

php[
  [
    'file' => '/pad/naar/bestand.php',
    'line' => 5,
    'function' => 'test',
    'args' => []
  ]
]

Zie ook