Ukaz throw
Ukaz throw se uporablja za izrecno metanje izjeme v PHP.
Sprejme en parameter - objekt izjeme, ki mora biti primerek razreda,
podedovanega od osnovnega razreda Exception. Ob klicu te funkcije se izvajanje trenutne
kode takoj prekine in PHP poskuša najti ustrezen blok catch za obravnavo izjeme.
Sintaksa
throw new ExceptionClass(message, code, previous);
Primer
Preprost primer generiranja izjeme:
<?php
$age = -5;
if ($age < 0) {
throw new Exception('Age cannot be negative');
}
?>
Rezultat izvajanja kode:
Fatal error: Uncaught Exception: Age cannot be negative
Primer
Primer z obravnavo izjeme:
<?php
try {
$res = 10 / 0;
if (is_infinite($res)) {
throw new Exception('Division by zero');
}
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
?>
Rezultat izvajanja kode:
'Error: Division by zero'
Primer
Uporaba uporabniške izjeme:
<?php
class MyCustomException extends Exception {}
try {
throw new MyCustomException('Custom error message');
} catch (MyCustomException $e) {
echo 'Custom error caught: ' . $e->getMessage();
}
?>
Rezultat izvajanja kode:
'Custom error caught: Custom error message'