A try parancs
A try konstrukció lehetővé teszi a kivételek kezelését, amelyek a kód végrehajtása során felmerülhetnek.
A try blokkban helyezzük el a potenciálisan veszélyes kódot, a catch blokkban pedig a kivételkezelőt.
Használható finally blokk is, amely minden esetben végrehajtódik.
Szintaxis
try {
// Kód, amely kivételt dobhat
} catch (ExceptionType $e) {
// A kivétel kezelése
} finally {
// Kód, amely minden esetben végrehajtódik
}
Példa
Egyszerű példa kivétel kezelésére:
<?php
try {
throw new Exception('Something went wrong');
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage();
}
?>
A kód végrehajtásának eredménye:
'Caught exception: Something went wrong'
Példa
Példa a finally blokk használatával:
<?php
try {
echo 'Try block executed';
} finally {
echo ' - Finally block executed';
}
?>
A kód végrehajtásának eredménye:
'Try block executed - Finally block executed'
Példa
Különböző típusú kivételek kezelése:
<?php
try {
// Kód, amely különböző kivételeket dobhat
throw new InvalidArgumentException('Invalid argument');
} catch (InvalidArgumentException $e) {
echo 'Invalid argument: ', $e->getMessage();
} catch (Exception $e) {
echo 'Generic exception: ', $e->getMessage();
}
?>
A kód végrehajtásának eredménye:
'Invalid argument: Invalid argument'
Lásd még
-
a
throwkonstrukciót,
amely kivételt generál -
a
set_exception_handlerfüggvényt,
amely beállítja a kivételkezelőt