Wypróbuj blok
PHP ma podstawową klasę o nazwie Wyjątek i wyjątki są wyrzucane z próbować blokować Wyjątek lub podklasa Wyjątek klasa.
Składnia:
próbowaćZatrzymaj blok
Złapać Blok pojawia się po próbować blok. PHP obsługuje wiele złapać bloki do obsługi wielu wyjątków. Kiedy jakikolwiek wyjątek rzuca, PHP próbuje dopasować do pierwszego bloku połowowego, a następnie drugi blok połowowy, jeśli nie pasuje do pierwszego i tak dalej.
Składnia:
próbowaćWreszcie blok
Wreszcie blok może być używany po lub zamiast bloku połowowego w php, a ten blok wykonuje się, gdy wypróbuj blok wyjściowy. Każdy normalny lub zakończenia można dodać do tego bloku po wykonaniu kodu bloku próbnego.
Składnia:
próbowaćPrzykład-1: Używanie bloku TRY-Catch dla prostego błędu
Poniższy przykład pokazuje użycie bloku próbnego dla jednego wyjątku. Utwórz plik PHP z następującym skryptem. Wartość parametru zapytania 'num„Został odczytany i sprawdzony w bloku próbnym. Jeśli wartość jest poniżej 10, wówczas blok próba rzuci wyjątek w bloku połowowym. W przeciwnym razie wartość zostanie wydrukowana. Block Catch złapie wyjątek i wydrukuje wiadomość wysyłaną z bloku próbowania. Jeśli nie przechodzi parametr zapytania, wartość domyślna wyniesie 100.
// Testuj liczbę to 10 lub więcejLiczba musi wynosić 10 lub więcej.
");Liczba to $ n
";Wyjście:
Uruchom skrypt bez żadnego parametru zapytania.
http: // localhost/phpcode/trycatch1.php
Uruchom skrypt z wartością parametrów zapytania, która jest mniejsza niż 10.
http: // localhost/phpcode/trycatch1.php?num = 5
Uruchom skrypt z wartością parametrów zapytania, która jest większa niż 10.
http: // localhost/phpcode/trycatch1.php?NUM = 15
Przykład-2: Obsługa wielu błędów poprzez odziedziczenie klasy wyjątków
Utwórz plik PHP z następującym skryptem, aby obsłużyć wiele wyjątków za pomocą wielu bloków połowowych. Podklasa nazwana 'MyException„został stworzony przez rozszerzenie klasy podstawowej”Wyjątek`` radzić sobie z ''Nieprawidłowy błąd adresu URL'. Klasa podstawowa Wyjątek był używany do obsługiPusty błąd adresu URL'.
// zadeklaruj podklasę MyException, rozszerzając klasę wyjątków'.$ this-> wiadomość.„Nie jest prawidłowym adresem URL
';;Adres URL jest pusty.
");".$ url.„To prawidłowy adres URL
";Wyjście:
Uruchom skrypt bez żadnego parametru zapytania.
http: // localhost/phpcode/trycatch2.php
Uruchom skrypt z wymienionym parametrem zapytania URL bez żadnej wartości.
http: // localhost/phpcode/trycatch2.php?URL =
Uruchom skrypt z wymienionym parametrem zapytania URL z nieprawidłową wartością adresu URL.
http: // localhost/phpcode/trycatch2.php?URL = Google
Uruchom skrypt z wymienionym parametrem zapytania URL Z ważną wartością URL.
http: // localhost/phpcode/trycatch2.php?url = http: // Google.com
Obraz
Przykład-3: Obsługa błędu pliku za pomocą TRY, CATH i Wreszcie blok
Utwórz plik PHP z następującym skryptem, aby poznać użycie try, catch i wreszcie blokuj. Skrypt będzie próbował otworzyć test pliku.txt 'i próba blok wyrzuci wyjątek, jeśli plik nie istnieje w bieżącej lokalizacji lub nie jest w stanie otworzyć. Blok połowowy wydrukuje komunikat o błędzie wyrzucony z bloku try. Kod bloku wreszcie zamknie obsługę plików po wykonaniu bloku próbowania. Wypróbuj blok wydrukuje zawartość pliku, jeśli nie pojawi się błąd.
error_reporting (0);Nie można otworzyć pliku.
");Wyjście:
Uruchom skrypt.
http: // localhost/phpcode/trycatch3.php
Przykład-4: Za pomocą zagnieżdżonego bloku próbki
Utwórz plik PHP z następującym skryptem, aby poznać sposób korzystania z zagnieżdżonego bloku próbki. Skrypt sprawdzi wartość pobraną z adresu URL to liczba lub nie w pierwszym bloku Try-Catch, a pobrana liczba jest większa niż 100 lub nie, zostanie sprawdzona w drugim bloku Try-Catch.
if (isset ($ _ get ['n']))Wyjście:
Uruchom skrypt bez żadnego parametru zapytania.
http: // localhost/phpcode/trycatch4.php
Uruchom skrypt z wartością parametru zapytania mniej niż 100.
http: // localhost/phpcode/trycatch4.php?n = 78
Uruchom skrypt z wartością parametrów zapytania większej niż 100.
http: // localhost/phpcode/trycatch4.php?n = 112
Przykład-5: Za pomocą bloku TRY-Catch z funkcją
Utwórz plik PHP z następującym skryptem, aby poznać użycie bloku Try-Catch z funkcją. Skrypt przyjmie dwie wartości liczbowe z parametrów zapytania URL, a blok próbki wywoła funkcję, która rzuci wyjątek, jeśli „Dzielenie przez zero" wystąpił błąd.
// Zdefiniuj funkcję obliczania podziałuWynik wyniku $ a/$ b = $
";Błąd: ', $ e-> getMessage (), "
";Wyjście:
Uruchom skrypt bez żadnego parametru zapytania.
http: // localhost/phpcode/trycatch5.php
Uruchom skrypt z wartościami parametrów zapytania, 10 i 5.
http: // localhost/phpcode/trycatch5.php?n1 = 10 i n2 = 5
Uruchom skrypt z wartościami parametrów zapytania, 10 i 0.
http: // localhost/phpcode/trycatch5.php?n1 = 10 i n2 = 0
Przykład-6: Wyświetl komunikat o błędzie szczegółowo dla niestandardowego wyjątku
Utwórz plik PHP z następującym skryptem, aby szczegółowo wyświetlić komunikat o błędzie za pomocą różnych metod klasy wyjątków. Skrypt przyjmie nazwę pliku z parametru URL i sprawdź, czy plik istnieje lub nie za pomocą bloku próbnego.
if (isset ($ _ get ['fn'])))Wyjście:
Uruchom skrypt bez żadnego parametru zapytania.
http: // localhost/phpcode/trycatch6.php
Uruchom skrypt z parametrem zapytania, który zawiera nieistniejącą nazwę pliku.
http: // localhost/phpcode/trycatch6.php?fn = tekst.tekst
Uruchom skrypt z parametrem zapytania, który zawiera istniejącą nazwę pliku.
http: // localhost/phpcode/trycatch6.php?fn = trycatch5.php
Wniosek
Podstawowe zastosowania bloku próbnego zostały wyjaśnione w tym samouczku za pomocą bardzo prostych skryptów PHP. Mam nadzieję, że koncepcja obsługi wyjątków w PHP zostanie usunięta po prawidłowym ćwiczeniu przykładów tego samouczka.