Komanda try
Konstrukcija try omogućava obradu izuzetaka koji mogu nastati tokom izvršavanja koda.
U bloku try se smešta potencijalno opasan kod, a u bloku catch - obrađivač izuzetaka.
Takođe se može koristiti blok finally, koji se izvršava u svakom slučaju.
Sintaksa
try {
// Kod koji može izazvati izuzetak
} catch (ExceptionType $e) {
// Obrada izuzetka
} finally {
// Kod koji će se izvršiti u svakom slučaju
}
Primer
Najjednostavniji primer obrade izuzetka:
<?php
try {
throw new Exception('Something went wrong');
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage();
}
?>
Rezultat izvršavanja koda:
'Caught exception: Something went wrong'
Primer
Primer sa korišćenjem bloka finally:
<?php
try {
echo 'Try block executed';
} finally {
echo ' - Finally block executed';
}
?>
Rezultat izvršavanja koda:
'Try block executed - Finally block executed'
Primer
Obrada različitih tipova izuzetaka:
<?php
try {
// Kod koji može izazvati različite izuzetke
throw new InvalidArgumentException('Invalid argument');
} catch (InvalidArgumentException $e) {
echo 'Invalid argument: ', $e->getMessage();
} catch (Exception $e) {
echo 'Generic exception: ', $e->getMessage();
}
?>
Rezultat izvršavanja koda:
'Invalid argument: Invalid argument'
Vidite takođe
-
konstrukciju
throw,
koja generiše izuzetak -
funkciju
set_exception_handler,
koja podešava obrađivač izuzetaka