Try-kommandoen

Konstruksjonen try tillater håndtering av unntak som kan oppstå under kjøring av kode. I try-blokken plasseres potensielt farlig kode, og i catch-blokken - unntakshåndtereren. Det kan også brukes en finally-blokk, som utføres uansett.

Syntaks

phptry {
  // Kode som kan forårsake unntak
} catch (ExceptionType $e) {
  // Håndtering av unntak
} finally {
  // Kode som vil kjøre uansett
}

Eksempel

Et enkelt eksempel på håndtering av unntak:

php<?php
try {
  throw new Exception('Noe gikk galt');
} catch (Exception $e) {
  echo 'Fanget unntak: ', $e->getMessage();
}
?>

Resultat av kodekjøring:

php'Fanget unntak: Noe gikk galt'

Eksempel

Eksempel med bruk av finally-blokk:

php<?php
try {
  echo 'Try-blokk utført';
} finally {
  echo ' - Finally-blokk utført';
}
?>

Resultat av kodekjøring:

php'Try-blokk utført - Finally-blokk utført'

Eksempel

Håndtering av forskjellige typer unntak:

php<?php
try {
  // Kode som kan forårsake forskjellige unntak
  throw new InvalidArgumentException('Ugyldig argument');
} catch (InvalidArgumentException $e) {
  echo 'Ugyldig argument: ', $e->getMessage();
} catch (Exception $e) {
  echo 'Generelt unntak: ', $e->getMessage();
}
?>

Resultat av kodekjøring:

php'Ugyldig argument: Ugyldig argument'

Se også