ბრძანება throw
ბრძანება throw გამოიყენება გამონაკლისის ცხადად გასაშვებად PHP-ში.
ის იღებს ერთ პარამეტრს - გამონაკლისის ობიექტს, რომელიც უნდა იყოს კლასის ეგზემპლარი,
რომელიც მემკვიდრეობით მიიღო ძირითადი კლასისგან Exception. ამ ფუნქციის გამოძახებისას მიმდინარე
კოდის შესრულება მყისიერად წყდება, და PHP ცდილობს იპოვოს შესაბამისი catch ბლოკი გამონაკლისის დასამუშავებლად.
სინტაქსი
throw new ExceptionClass(message, code, previous);
მაგალითი
გამონაკლისის გენერაციის მარტივი მაგალითი:
<?php
$age = -5;
if ($age < 0) {
throw new Exception('Age cannot be negative');
}
?>
კოდის შესრულების შედეგი:
Fatal error: Uncaught Exception: Age cannot be negative
მაგალითი
მაგალითი გამონაკლისის დამუშავებით:
<?php
try {
$res = 10 / 0;
if (is_infinite($res)) {
throw new Exception('Division by zero');
}
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
?>
კოდის შესრულების შედეგი:
'Error: Division by zero'
მაგალითი
მომხმარებლის გამონაკლისის გამოყენება:
<?php
class MyCustomException extends Exception {}
try {
throw new MyCustomException('Custom error message');
} catch (MyCustomException $e) {
echo 'Custom error caught: ' . $e->getMessage();
}
?>
კოდის შესრულების შედეგი:
'Custom error caught: Custom error message'