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
try {
// 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
try {
throw new Exception('Nekaj je šlo narobe');
} catch (Exception $e) {
echo 'Ujeta izjema: ', $e->getMessage();
}
?>
Rezultat izvajanja kode:
'Ujeta izjema: Nekaj je šlo narobe'
Primer
Primer z uporabo bloka finally:
<?php
try {
echo 'Blok try je bil izveden';
} finally {
echo ' - Blok finally je bil izveden';
}
?>
Rezultat izvajanja kode:
'Blok try je bil izveden - Blok finally je bil izveden'
Primer
Obdelava različnih vrst izjem:
<?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:
'Neveljaven argument: Neveljaven argument'
Glejte tudi
-
konstrukcijo
throw,
ki generira izjemo -
funkcijo
set_exception_handler,
ki nastavi obdelovalnik izjem