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
new Exception(string $message = "", int $code = 0, Throwable $previous = null);
Voorbeeld
Laten we een eenvoudige uitzondering maken en afhandelen:
<?php
try {
throw new Exception('Er ging iets mis', 100);
} catch (Exception $e) {
echo 'Fout: ' . $e->getMessage();
}
?>
Resultaat van de code-uitvoering:
'Fout: Er ging iets mis'
Voorbeeld
Laten we de belangrijkste methoden van de klasse Exception gebruiken:
<?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):
'Bericht: Testuitzondering
Code: 123
Bestand: /pad/naar/bestand.php
Regel: 3'
Voorbeeld
Laten we de callstack ophalen bij een uitzondering:
<?php
function test() {
throw new Exception('Stack trace test');
}
try {
test();
} catch (Exception $e) {
print_r($e->getTrace());
}
?>
Resultaat van de code-uitvoering (voorbeeld):
[
[
'file' => '/pad/naar/bestand.php',
'line' => 5,
'function' => 'test',
'args' => []
]
]
Zie ook
-
klasse
ErrorException,
die fouten vertegenwoordigt als uitzonderingen -
functie
set_exception_handler,
die een aangepaste uitzonderingshandler instelt