Try komandası
try konstruksiyası kodun icrası zamanı yarana biləcək istisnaları emal etməyə imkan verir.
try blokunda potensial təhlükəli kod, catch blokunda isə istisnaların emalçısı yerləşdirilir.
Həmçinin istənilən halda icra olunan finally blokundan da istifadə oluna bilər.
Sintaksis
try {
// Istisna törədə biləcək kod
} catch (ExceptionType $e) {
// Istisnanın emalı
} finally {
// Istənilən halda icra olunacaq kod
}
Nümunə
Istisnanın emalının ən sadə nümunəsi:
<?php
try {
throw new Exception('Something went wrong');
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage();
}
?>
Kodun icra nəticəsi:
'Caught exception: Something went wrong'
Nümunə
finally bloku ilə istifadə nümunəsi:
<?php
try {
echo 'Try block executed';
} finally {
echo ' - Finally block executed';
}
?>
Kodun icra nəticəsi:
'Try block executed - Finally block executed'
Nümunə
Müxtəlif tipli istisnaların emalı:
<?php
try {
// Müxtəlif istisnalar törədə biləcək kod
throw new InvalidArgumentException('Invalid argument');
} catch (InvalidArgumentException $e) {
echo 'Invalid argument: ', $e->getMessage();
} catch (Exception $e) {
echo 'Generic exception: ', $e->getMessage();
}
?>
Kodun icra nəticəsi:
'Invalid argument: Invalid argument'
Həmçinin bax
-
istisna törədən
throwkonstruksiyası,
-
istisnaların emalçısını təyin edən
set_exception_handlerfunksiyası,