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
try {
// 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
try {
throw new Exception('Niečo sa pokazilo');
} catch (Exception $e) {
echo 'Zachytaná výnimka: ', $e->getMessage();
}
?>
Výsledok vykonania kódu:
'Zachytaná výnimka: Niečo sa pokazilo'
Príklad
Príklad s použitím bloku finally:
<?php
try {
echo 'Blok try bol vykonaný';
} finally {
echo ' - Blok finally bol vykonaný';
}
?>
Výsledok vykonania kódu:
'Blok try bol vykonaný - Blok finally bol vykonaný'
Príklad
Spracovanie rôznych typov výnimiek:
<?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:
'Neplatný argument: Neplatný argument'
Pozrite tiež
-
konštrukciu
throw,
ktorá generuje výnimku -
funkciu
set_exception_handler,
ktorá nastavuje spracovateľa výnimiek