Debugowanie w Laravel: Jak znaleźć i naprawić błędy w Laravel aplikacji

Debugowanie jest istotną częścią procesu Laravel programowania, umożliwiając zrozumienie i rozwiązanie problemów w aplikacji. Laravel udostępnia różne narzędzia i funkcje ułatwiające debugowanie, pomagające zidentyfikować główną przyczynę błędów i rozwiązać je. Oto podstawowy przewodnik dotyczący debugowania w Laravel:

Wyświetl komunikaty o błędach

Laravel Środowisko programistyczne programu jest skonfigurowane do wyświetlania szczegółowych komunikatów o błędach w przypadku wystąpienia błędów. Upewnij się, że pracujesz w środowisku programistycznym, a komunikaty o błędach będą wyświetlane bezpośrednio w przeglądarce.

 

Skorzystaj z dd() funkcji

Funkcja dd()(dump and die) jest użytecznym narzędziem do sprawdzania i wyświetlania zmiennych, tablic lub obiektów podczas wykonywania. Możesz użyć dd() do sprawdzenia danych i zbadania ich stanu.

$data = ['name' => 'John', 'age' => 25];  
dd($data);  

Po napotkaniu dd() funkcji Laravel zatrzyma wykonywanie i wyświetli szczegółowe informacje o $data zmiennej.

 

Wykorzystaj pliki dziennika

Laravel zapewnia metody rejestrowania informacji i błędów w plikach dziennika. Możesz użyć metod takich jak info(), error(), debug() itp., aby zalogować się podczas wykonywania. Pliki dziennika są przechowywane w storage/logs katalogu.

 

Oto przykład użycia dzienników plików Laravel

Najpierw upewnij się, Laravel że jest skonfigurowany do rejestrowania wiadomości. Otwórz .env plik i upewnij się, że LOG_CHANNEL zmienna jest ustawiona na 'daily' lub 'stack'(jeśli nie jest jeszcze ustawiona):

LOG_CHANNEL=daily

W swoim kodzie możesz użyć Log fasady do pisania komunikatów dziennika. Oto przykład

use Illuminate\Support\Facades\Log;  
  
public function example()  
{  
    Log::info('This is an information log message.');  
  
    Log::warning('This is a warning log message.');  
  
    Log::error('This is an error log message.');  
}  

W tym przykładzie używamy metod info(), warning(), i error() fasady Log do rejestrowania różnych typów komunikatów. Za pomocą tych metod można rejestrować komunikaty na różnych poziomach rejestrowania.

Domyślnie Laravel logi są przechowywane w storage/logs katalogu. Możesz uzyskać dostęp do plików dziennika w tym katalogu, aby wyświetlić zarejestrowane komunikaty. Pliki dziennika są uporządkowane według daty.

Aby zapisać komunikaty dziennika z dodatkowym kontekstem lub danymi, możesz przekazać tablicę jako drugi argument do metod dziennika.

Log::info('User created', ['user_id' => 1]);

W takim przypadku dodatkowe dane kontekstowe(identyfikator_użytkownika = 1) zostaną uwzględnione w komunikacie dziennika

Możesz także tworzyć niestandardowe kanały dziennika i konfigurować je w config/logging.php pliku. Pozwala to na oddzielenie dzienników dla różnych części aplikacji lub użycie różnych konfiguracji przechowywania dzienników.

 

Używać Laravel Telescope

Laravel Telescope jest potężnym i wygodnym narzędziem do debugowania dla platformy Laravel. Zapewnia interfejs sieciowy do monitorowania i analizowania żądań, zapytań do baz danych, kolejek i nie tylko. Aby korzystać z Telescope, musisz zainstalować i skonfigurować go w swojej Laravel aplikacji.

 

Użyj Xdebug i Debugging IDE

Xdebug to popularne narzędzie do debugowania używane w Laravel wielu innych projektach PHP. Instalując Xdebug i łącząc go z debugującym IDE, takim jak PhpStorm, możesz śledzić i sprawdzać stan wykonania kodu PHP, ustawiać punkty przerwania, sprawdzać zmienne i wykorzystywać inne funkcje debugowania.

 

Dzięki powyższym narzędziom i funkcjom możesz łatwo debugować i rozwiązywać problemy z Laravel aplikacją.