367 of 410 menu

Klasse ErrorException

De klasse ErrorException erft over van de basisklasse Exception en wordt gebruikt om PHP-fouten om te zetten in uitzonderingen. Het voegt informatie over de ernst (severity) van de fout toe aan de standaardfunctionaliteit van uitzonderingen. De klasse is vooral nuttig bij gebruik met de functie set_error_handler.

Syntaxis

new ErrorException( string $message = "", int $code = 0, int $severity = E_ERROR, string $filename = __FILE__, int $lineno = __LINE__, Throwable $previous = null );

Voorbeeld

Laten we een ErrorException maken en verwerken:

<?php try { throw new ErrorException('Kritieke fout', 0, E_ERROR); } catch (ErrorException $e) { echo 'Fout: ' . $e->getMessage(); echo ' Ernst: ' . $e->getSeverity(); } ?>

Resultaat van het uitvoeren van de code:

'Fout: Kritieke fout Ernst: 1'

Voorbeeld

Laten we standaard PHP-fouten omzetten in uitzonderingen:

<?php function errorHandler($severity, $message, $file, $line) { throw new ErrorException($message, 0, $severity, $file, $line); } set_error_handler('errorHandler'); try { strpos(); // Verkeerd aantal argumenten } catch (ErrorException $e) { echo 'Uitzondering opgevangen: ' . $e->getMessage(); echo ' in ' . $e->getFile(); echo ' op regel ' . $e->getLine(); } ?>

Resultaat van het uitvoeren van de code (voorbeeld):

'Uitzondering opgevangen: strpos() verwacht minstens 2 parameters, 0 gegeven in /pad/naar/bestand.php op regel 10'

Voorbeeld

Laten we informatie over de ernst van de fout verkrijgen:

<?php try { throw new ErrorException('Waarschuwingsbericht', 0, E_WARNING); } catch (ErrorException $e) { echo 'Ernstniveau: ' . $e->getSeverity(); echo ' Is waarschuwing: ' . ($e->getSeverity() === E_WARNING ? 'ja' : 'nee'); } ?>

Resultaat van het uitvoeren van de code:

'Ernstniveau: 2 Is waarschuwing: ja'

Zie ook

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren