Amri throw
Amri throw inatumika kuzua isipokuwa kwa makusudi katika PHP.
Inakubua parameta moja - kitu cha isipokuwa, ambacho kinapaswa kuwa mfano wa darasa,
lililourithi kutoka kwa darasa la msingi Exception. Wakati wa kuitoa amri hii, utekelezaji wa
msimbo wa sasa unakoma mara moja, na PHP inajaribu kupata kizuizi kinachofaa cha catch kushughulikia isipokuwa.
Sintaksia
throw new ExceptionClass(message, code, previous);
Mfano
Mfano rahisi wa kuzua isipokuwa:
<?php
$age = -5;
if ($age < 0) {
throw new Exception('Umri hauwezi kuwa hasi');
}
?>
Matokeo ya kutekeleza msimbo:
Fatal error: Uncaught Exception: Umri hauwezi kuwa hasi
Mfano
Mfano na kushughulikia isipokuwa:
<?php
try {
$res = 10 / 0;
if (is_infinite($res)) {
throw new Exception('Mgawanyiko kwa sifuri');
}
} catch (Exception $e) {
echo 'Kosa: ' . $e->getMessage();
}
?>
Matokeo ya kutekeleza msimbo:
'Kosa: Mgawanyiko kwa sifuri'
Mfano
Matumizi ya isipokuwa maalum ya mtumiaji:
<?php
class MyCustomException extends Exception {}
try {
throw new MyCustomException('Ujumbe wa kosa maalum');
} catch (MyCustomException $e) {
echo 'Kosa maalum limepokewa: ' . $e->getMessage();
}
?>
Matokeo ya kutekeleza msimbo:
'Kosa maalum limepokewa: Ujumbe wa kosa maalum'