Ukaz try

Konstrukcija try omogoča obdelavo izjem, ki se lahko pojavijo med izvajanjem kode. V bloku try se nahaja potencialno nevarna koda, v bloku catch pa obdelovalnik izjem. Lahko se uporabi tudi blok finally, ki se izvede v vsakem primeru.

Sintaksa

phptry {
  // Koda, ki lahko povzroči izjemo
} catch (ExceptionType $e) {
  // Obdelava izjeme
} finally {
  // Koda, ki se bo izvedla v vsakem primeru
}

Primer

Najenostavnejši primer obdelave izjeme:

php<?php
try {
  throw new Exception('Nekaj je šlo narobe');
} catch (Exception $e) {
  echo 'Ujeta izjema: ', $e->getMessage();
}
?>

Rezultat izvajanja kode:

php'Ujeta izjema: Nekaj je šlo narobe'

Primer

Primer z uporabo bloka finally:

php<?php
try {
  echo 'Blok try je bil izveden';
} finally {
  echo ' - Blok finally je bil izveden';
}
?>

Rezultat izvajanja kode:

php'Blok try je bil izveden - Blok finally je bil izveden'

Primer

Obdelava različnih vrst izjem:

php<?php
try {
  // Koda, ki lahko povzroči različne izjeme
  throw new InvalidArgumentException('Neveljaven argument');
} catch (InvalidArgumentException $e) {
  echo 'Neveljaven argument: ', $e->getMessage();
} catch (Exception $e) {
  echo 'Splošna izjema: ', $e->getMessage();
}
?>

Rezultat izvajanja kode:

php'Neveljaven argument: Neveljaven argument'

Glejte tudi