error_get_last
funkcja
Zwraca tablicę z informacjami o ostatnim błędzie PHP (typ, komunikat, plik, linia) lub null, gdy błędu nie było.
error_get_last(): ?array
error_get_last zwraca asocjacyjną tablicę opisującą ostatni błąd zarejestrowany przez PHP, niezależnie od tego, czy był wyświetlony użytkownikowi. Tablica zawiera klucze:
| Klucz | Opis |
|---|---|
| type | Stała błędu, np. E_WARNING (2), E_NOTICE (8) |
| message | Treść komunikatu błędu |
| file | Plik, w którym wystąpił błąd |
| line | Numer linii |
Jeśli od startu skryptu żaden błąd nie wystąpił, funkcja zwraca null.
<?php
declare(strict_types=1);
// Wywołaj cichą operację z błędem
$wynik = @file_get_contents('/nieistniejacy/plik.txt');
$blad = error_get_last();
if ($blad !== null) {
echo $blad['message'];
// wynik: file_get_contents(/nieistniejacy/plik.txt): Failed to open stream: ...
echo "\nTyp: " . $blad['type']; // np. 2 (E_WARNING)
echo "\nLinia: " . $blad['line'];
}
Najczęstsze użycie to obsługa funkcji, które wyciszają błędy operatorem @ i zwracają false przy niepowodzeniu — error_get_last pozwala wtedy dowiedzieć się, co dokładnie poszło nie tak.
Uwaga: funkcja zwraca ostatni błąd, a nie listę wszystkich. Jeśli po błędnym wywołaniu nastąpi inne, wcześniejszy błąd zostanie nadpisany.