Blog webdeveloperski Patryk yarpo Jar

Wyjątki w PHP 5

Autor wiadomości Listopad 27, 2010

Mechanizm wyjątków pozwala na uniknięcie sytuacji, w których trzeba było tworzyć setki kodów błędów, a następnie za każdym razem sprawdzać, jaki kod został zwrócony przez funkcję. Dodatkowo - rzucony wyjątek można przechwycić i obsłużyć. O tym, jak się to robi przeczytasz dalej.

Rzucanie wyjątków

Aby rzucić wyjątek starczy użyć operator `throw'.

throw new Exception('To jest treść wyjątku');
echo 'tego tekstu już nie wyświetli';

W wyniku działania takiego kodu otrzymamy na ekranie:

Fatal error: Uncaught exception 'Exception' with message 'To jest treść wyjątku' in C:\wamp\www\localhost\a.php:3 Stack trace: #0 {main} thrown in C:\wamp\www\localhost\a.php on line 3

Oczywiście treścią może być np. "Nie ma pliku". Jako parametr do konstruktora klasy Exception przekazujemy ciąg znaków. Dowolny. Jeśli nie przechwycimy wyjątku powoduje on zakończenie działania skryptu.

Przechwytywanie wyjątków

Do przechwytywania wyjątków służy konstrukcja try-catch:

try
{
    throw new Exception('To jest treść wyjątku.');
    echo 'ten tekst nie zostanie wyświetlony';
}
catch(Exception $e)
{
    echo $e->getMessage();
}
echo 'ten napis zostanie wyświetlony';

Powyższy kod wypisze na ekran:

To jest treść wyjątku.ten napis zostanie wyświetlony

Jak widać, przechwycony wyjątek nie kończy działania skryptu. Pozwala obsłużyć zaistniały wyjątek w bloku `catch' i działać dalej.

Proszę potraktować ten artykuł jako wstęp do wyjątków.

Warto przeczytać:

Komentarze (0) Trackbacks (0)

Brak komentarzy.


Leave a comment

 

Brak trackbacków.