Kommandot try

Konstruktionen try gör det möjligt att hantera undantag som kan uppstå när koden exekveras. I try-blocket placeras den potentiellt farliga koden, och i catch-blocket - hanteraren för undantag. Ett finally-block kan också användas, som exekveras under alla omständigheter.

Syntax

phptry {
  // Kod som kan orsaka ett undantag
} catch (ExceptionType $e) {
  // Hantering av undantag
} finally {
  // Kod som alltid kommer att exekveras
}

Exempel

Ett enkelt exempel på hantering av ett undantag:

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

Resultat av kodexekvering:

php'Caught exception: Something went wrong'

Exempel

Exempel med användning av finally-blocket:

php<?php
try {
  echo 'Try block executed';
} finally {
  echo ' - Finally block executed';
}
?>

Resultat av kodexekvering:

php'Try block executed - Finally block executed'

Exempel

Hantering av olika typer av undantag:

php<?php
try {
  // Kod som kan orsaka olika undantag
  throw new InvalidArgumentException('Invalid argument');
} catch (InvalidArgumentException $e) {
  echo 'Invalid argument: ', $e->getMessage();
} catch (Exception $e) {
  echo 'Generic exception: ', $e->getMessage();
}
?>

Resultat av kodexekvering:

php'Invalid argument: Invalid argument'

Se även