ErrorException: Skillnad mellan sidversioner
Hoppa till navigering
Hoppa till sök
Admin (diskussion | bidrag) (Skapade sidan med '=== ErrorException === (PHP 5 >= 5.1.0, PHP 7, PHP 8) ==== Introduktion ==== Ett Error Exception. ==== Klassöversikt ==== <pre> class ErrorException extends Exception { →Egenskaper: protected int $severity = E_ERROR; →Ärvt från Exception: protected string $message = ""; private string $string = ""; protected int $code; protected string $file = ""; protected int $line; private array $trace = []; private ?Throwable $previous = null; →Metoder: public __c...') |
(Ingen skillnad)
|
Nuvarande version från 29 augusti 2024 kl. 07.47
ErrorException
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
Introduktion
Ett Error Exception.
Klassöversikt
class ErrorException extends Exception {
/* Egenskaper */
protected int $severity = E_ERROR;
/* Ärvt från Exception */
protected string $message = "";
private string $string = "";
protected int $code;
protected string $file = "";
protected int $line;
private array $trace = [];
private ?Throwable $previous = null;
/* Metoder */
public __construct(
string $message = "",
int $code = 0,
int $severity = E_ERROR,
?string $filename = null,
?int $line = null,
?Throwable $previous = null
)
final public getSeverity(): int
/* Ärvt från Exception */
final public Exception::getMessage(): string
final public Exception::getPrevious(): ?Throwable
final public Exception::getCode(): int
final public Exception::getFile(): string
final public Exception::getLine(): int
final public Exception::getTrace(): array
final public Exception::getTraceAsString(): string
public Exception::__toString(): string
private Exception::__clone(): void
}
Egenskaper
- severity:
Allvarlighetsgraden av undantaget
Exempel
Exempel #1 Använd set_error_handler() för att omvandla felmeddelanden till ErrorException.
<?php
set_error_handler(function (int $errno, string $errstr, string $errfile, int $errline) {
if (!(error_reporting() & $errno)) {
// Denna felkod ingår inte i error_reporting.
return;
}
if ($errno === E_DEPRECATED || $errno === E_USER_DEPRECATED) {
// Kasta inte ett undantag för avskrivningsvarningar då nya eller oväntade
// avskrivningar skulle kunna bryta applikationen.
return;
}
throw new \ErrorException($errstr, 0, $errno, $errfile, $errline);
});
// Att unserialisera trasiga data utlöser en varning som kommer att omvandlas till en
// ErrorException av felhanteraren.
unserialize('trasiga data');
?>
Ovanstående exempel kommer att ge något liknande:
Fatal error: Uncaught ErrorException: unserialize(): Error at offset 0 of 11 bytes in test.php:16
Stack trace:
#0 [internal function]: {closure}(2, 'unserialize(): ...', 'test.php', 16)
#1 test.php(16): unserialize('trasiga data')
#2 {main}
thrown in test.php on line 16
Innehållsförteckning
- ErrorException::__construct — Konstruerar undantaget
- ErrorException::getSeverity — Hämtar undantagets allvarlighetsgrad
Sidslut
Orginalhemsidan på Engelska : https://www.php.net/manual/en/class.exception.php
PHP
Språkreferens
Språkreferens#Fördefinierade_Variabler
Fördefinierade Undantag
Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webserver.