Funktionen catch
Funktionen catch er en del af try-catch-blokken og tjener til at fange undtagelser, som kan blive kastet i try-blokken. Når en undtagelse opstår, overgår eksekveringen af koden til den tilsvarende catch-blok, hvor fejlen kan håndteres.
Syntaks
try {
// Kode, der kan kaste en undtagelse
} catch (ExceptionType $e) {
// Håndtering af undtagelsen
}
Eksempel
Et enkelt eksempel på håndtering af en undtagelse:
<?php
try {
throw new Exception('Something went wrong');
} catch (Exception $e) {
echo 'Caught exception: ' . $e->getMessage();
}
?>
Resultat af kodeeksekvering:
'Caught exception: Something went wrong'
Eksempel
Håndtering af forskellige typer undtagelser:
<?php
try {
if (rand(0, 1)) {
throw new InvalidArgumentException('Invalid argument');
} else {
throw new RuntimeException('Runtime error');
}
} catch (InvalidArgumentException $e) {
echo 'Invalid argument: ' . $e->getMessage();
} catch (RuntimeException $e) {
echo 'Runtime error: ' . $e->getMessage();
} catch (Exception $e) {
echo 'Generic exception: ' . $e->getMessage();
}
?>
Mulige resultater af kodeeksekvering:
'Invalid argument: Invalid argument'
eller
'Runtime error: Runtime error'