367 of 410 menu

Kelas ErrorException

Kelas ErrorException diwarisi daripada kelas asas Exception dan digunakan untuk menukar ralat PHP kepada pengecualian. Ia menambah maklumat tentang keparahan ralat (severity) kepada fungsi piawai pengecualian. Kelas ini amat berguna apabila digunakan dengan fungsi set_error_handler.

Sintaks

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

Contoh

Mencipta dan mengendalikan ErrorException:

<?php try { throw new ErrorException('Critical error', 0, E_ERROR); } catch (ErrorException $e) { echo 'Error: ' . $e->getMessage(); echo ' Severity: ' . $e->getSeverity(); } ?>

Hasil pelaksanaan kod:

'Error: Critical error Severity: 1'

Contoh

Menukar ralat piawai PHP kepada pengecualian:

<?php function errorHandler($severity, $message, $file, $line) { throw new ErrorException($message, 0, $severity, $file, $line); } set_error_handler('errorHandler'); try { strpos(); // Bilangan argumen yang tidak betul } catch (ErrorException $e) { echo 'Caught exception: ' . $e->getMessage(); echo ' in ' . $e->getFile(); echo ' on line ' . $e->getLine(); } ?>

Hasil pelaksanaan kod (contoh):

'Caught exception: strpos() expects at least 2 parameters, 0 given in /path/to/file.php on line 10'

Contoh

Mendapatkan maklumat tentang keparahan ralat:

<?php try { throw new ErrorException('Warning message', 0, E_WARNING); } catch (ErrorException $e) { echo 'Severity level: ' . $e->getSeverity(); echo ' Is warning: ' . ($e->getSeverity() === E_WARNING ? 'yes' : 'no'); } ?>

Hasil pelaksanaan kod:

'Severity level: 2 Is warning: yes'

Lihat juga

  • kelas Exception,
    kelas asas untuk semua pengecualian dalam PHP
  • fungsi set_error_handler,
    yang menetapkan pengendali ralat pengguna
Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak