Podsumowanie błędów w PHP

Bez względu na to, jak zgrabny i ostrożny był programista sieciowy, podczas jego pracy mogą występować błędy i niedokładności. W rezultacie może to spowodować awarię witryny lub usługi. Do debugowania podczas tworzenia projektu można włączyć wyjście błędów w PHP.

Jak to działa?

PHP zdecydowanie odpowiada na ten lub inny kod skryptu. W niektórych przypadkach wykonanie wymaganej akcji w innych powoduje błąd. Mechanizm ten pomaga programistom w momencie implementacji obszaru kodu, aby szybko poprawić niedociągnięcia.


Jednak zawieranie błędów w PHP nie zawsze jest konieczne. Po zakończeniu projektu ta funkcja jest wyłączona w celu uniknięcia nieuprawnionego dostępu lub nieuprawnionego dostępu.

Konfiguracja

Plik konfiguracyjny PHP odpowiada plikowi php.ini. Ma dyrektywę error_reporting, która po prostu określa wyjście błędów w PHP. Jednak nawet jeśli zawiera obsługę wyjątków, display_errors odpowiada ich wyświetlaniu w oknie przeglądarki. Jeśli jest wyłączona, system wyświetli pustą stronę zamiast błędu.

Klasyfikacja wyjątków

Wnioski błędów w PHP można podzielić na kilka kategorii:
  • błędy, w wyniku których praca skryptu zostanie zatrzymana. Tak zwane ofiary śmiertelne. Należą do nich: E_ERROR, E_COMPILE_ERROR;
  • Błędy, które można naprawić. Ich wartości dla dyrektywy error_reporting mogą być następujące: E_WARNING, E_NOTICE i inne.
  • Warto rozważyć bardziej szczegółowo każdy typ i jego opis funkcjonalny.
  • E_ERROR. Zazwyczaj ten typ odnosi się do takich błędów, których nie można szybko wyeliminowaćlub kontynuuj skrypt. Może to obejmować problemy z przydzielaniem pamięci;
  • E_WARNING. Kod będzie nadal działał, ale pojawi się ostrzeżenie, że jest jakiś błąd, którego kod jest wskazany w wiadomości. Nie krytyczny;
  • E_NOTICE. Wiadomości, które pokazują: było coś, co mogło spowodować błąd. Nie jest również krytyczny dla wykonywania kodu;
  • E_USER_ERROR. Błędy generowane przez użytkownika;
  • E_ALL. Obejmuje to wszystkie rodzaje błędów. Z reguły ta opcja jest domyślnie włączona podczas instalowania tłumacza.
  • , aby włączyć błędów wyjściowe w PHP

    Sposoby stosowania mechanizmów błędów w PHP może się różnić w zależności od tego, gdzie jest stosowany kod - gospodarza lub miejscowo. W drugim przypadku programista może skonfigurować swój serwer i wyświetlacz tak, jak chce, a mianowicie zmienić konfigurację w pliku php.ini. Aby przytoczyć dwa dyrektyw - display_errors i error_reporting następującą postać:


    display_errors na error_reporting E_ALL Polecenia te umożliwiają wyświetlanie wszystkich komunikatów o błędach bezpośrednio w oknie przeglądarki.
    Jeśli rozwój odbywa się na wirtualnym hostingu, funkcja wyświetlania błędów jest często wyłączona dla celów bezpieczeństwa. Dlatego, aby go aktywować, musisz użyć pliku konfiguracyjnego serwera htaccess Apache. Zwykle znajduje się w katalogu głównym witryny. Trzeba dodać kilka wierszy za pomocą dowolnego edytora tekstu: display_errors php_flag dotyczących raportowania błędów php_value -1 błędy mogą również prowadzić bezpośrednio z kodu, używającini_set () Należy jednak pamiętać, że po rozbudowie witryny jej aplikacja może powodować problemy z bezpieczeństwem.

    Zapis do pliku

    PHP umożliwia zapisanie wszystkich błędów, które wystąpiły w określonym miejscu na dysku twardym. Aby dołączyć wynik pliku PHP błędu, który można wykorzystać na trzy sposoby:
  • edytować plik php.ini. Konieczne jest tutaj zdefiniowanie dwóch linii. Pierwsza to log_errors = On, która faktycznie aktywuje wyjście. Drugi to error_log = ścieżka /do pożądanego /pliku.
  • Edytuj htaccess. Możesz również dodać do niego dwie linie. php_value log_errors «on» i php_value error_log ścieżka /do pliku.
  • Użyj funkcji ini_set w wymaganym miejscu.
  • Podsumowanie

    Podsumowanie błędów w PHP - narzędzie niezbędne do debugowania kodu. Ale może również tworzyć potencjalnie podatne na zagrożenia strefy. Dlatego konieczne jest ostrożne i dokładne stosowanie tego mechanizmu. Po przejściu witryny lub usługi na wszystkie etapy testowania należy uważać, aby nie wyświetlać błędów, które umożliwiają osobie atakującej dostęp do krytycznych danych.

    Powiązane publikacje