Trieda Exception
Trieda Exception predstavuje základnú triedu pre všetky výnimky v PHP.
Obsahuje základné metódy pre prácu s výnimkami: získanie správy o chybe,
kódu chyby, súboru a riadku kde vznikla výnimka, ako aj stacku volaní.
Pri vytvorení výnimky je možné odovzdať správu, kód chyby a predchádzajúcu výnimku.
Syntax
new Exception(string $message = "", int $code = 0, Throwable $previous = null);
Príklad
Vytvorme a spracujme jednoduchú výnimku:
<?php
try {
throw new Exception('Niečo sa pokazilo', 100);
} catch (Exception $e) {
echo 'Chyba: ' . $e->getMessage();
}
?>
Výsledok vykonania kódu:
'Chyba: Niečo sa pokazilo'
Príklad
Použime základné metódy triedy Exception:
<?php
try {
throw new Exception('Testovacia výnimka', 123);
} catch (Exception $e) {
echo 'Správa: ' . $e->getMessage() . "\n";
echo 'Kód: ' . $e->getCode() . "\n";
echo 'Súbor: ' . $e->getFile() . "\n";
echo 'Riadok: ' . $e->getLine() . "\n";
}
?>
Výsledok vykonania kódu (príklad):
'Správa: Testovacia výnimka
Kód: 123
Súbor: /path/to/file.php
Riadok: 3'
Príklad
Získajme stack volaní pri výnimke:
<?php
function test() {
throw new Exception('Test stacku volaní');
}
try {
test();
} catch (Exception $e) {
print_r($e->getTrace());
}
?>
Výsledok vykonania kódu (príklad):
[
[
'file' => '/path/to/file.php',
'line' => 5,
'function' => 'test',
'args' => []
]
]
Pozrite tiež
-
triedu
ErrorException,
ktorá predstavuje chyby vo forme výnimiek -
funkciu
set_exception_handler,
ktorá nastavuje používateľský handler výnimiek