Príkaz try

Konštrukcia try umožňuje spracovať výnimky, ktoré môžu nastať pri vykonávaní kódu. V bloku try sa umiestni potenciálne nebezpečný kód a v bloku catch - spracovateľ výnimiek. Tiež môže byť použitý blok finally, ktorý sa vykoná v každom prípade.

Syntax

phptry {
  // Kód, ktorý môže spôsobiť výnimku
} catch (ExceptionType $e) {
  // Spracovanie výnimky
} finally {
  // Kód, ktorý sa vykoná v každom prípade
}

Príklad

Najjednoduchší príklad spracovania výnimky:

php<?php
try {
  throw new Exception('Niečo sa pokazilo');
} catch (Exception $e) {
  echo 'Zachytaná výnimka: ', $e->getMessage();
}
?>

Výsledok vykonania kódu:

php'Zachytaná výnimka: Niečo sa pokazilo'

Príklad

Príklad s použitím bloku finally:

php<?php
try {
  echo 'Blok try bol vykonaný';
} finally {
  echo ' - Blok finally bol vykonaný';
}
?>

Výsledok vykonania kódu:

php'Blok try bol vykonaný - Blok finally bol vykonaný'

Príklad

Spracovanie rôznych typov výnimiek:

php<?php
try {
  // Kód, ktorý môže spôsobiť rôzne výnimky
  throw new InvalidArgumentException('Neplatný argument');
} catch (InvalidArgumentException $e) {
  echo 'Neplatný argument: ', $e->getMessage();
} catch (Exception $e) {
  echo 'Všeobecná výnimka: ', $e->getMessage();
}
?>

Výsledok vykonania kódu:

php'Neplatný argument: Neplatný argument'

Pozrite tiež