367 of 410 menu

Класси ErrorException

Класси ErrorException аз классаи асосии Exception мерос гирифтааст ва барои табдил додани хатоҳои PHP ба истисноҳо истифода мешавад. Он ба функсионали стандартии истисноҳо маълумот дар бораи вазнинии хато (severity) илова мекунад. Класс хусусан дар ҳолати истифода бо функсияи set_error_handler судманд аст.

Синтаксис

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

Мисол

ErrorException эҷод карда муомила мекунем:

<?php try { throw new ErrorException('Хатои ҷиддӣ', 0, E_ERROR); } catch (ErrorException $e) { echo 'Хато: ' . $e->getMessage(); echo ' Вазнинӣ: ' . $e->getSeverity(); } ?>

Натиҷаи иҷрои код:

'Хато: Хатои ҷиддӣ Вазнинӣ: 1'

Мисол

Хатоҳои стандартии PHP-ро ба истисноҳо табдил диҳем:

<?php function errorHandler($severity, $message, $file, $line) { throw new ErrorException($message, 0, $severity, $file, $line); } set_error_handler('errorHandler'); try { strpos(); // Миқдори нодурусти аргументҳо } catch (ErrorException $e) { echo 'Истисно гирифта шуд: ' . $e->getMessage(); echo ' дар ' . $e->getFile(); echo ' дар сатри ' . $e->getLine(); } ?>

Натиҷаи иҷрои код (мисол):

'Истисно гирифта шуд: strpos() expects at least 2 parameters, 0 given in /path/to/file.php on line 10'

Мисол

Маълумот дар бораи вазнинии хато гирем:

<?php try { throw new ErrorException('Паёми огоҳӣ', 0, E_WARNING); } catch (ErrorException $e) { echo 'Сатҳи вазнинӣ: ' . $e->getSeverity(); echo ' Огоҳӣ аст: ' . ($e->getSeverity() === E_WARNING ? 'ҳа' : 'не'); } ?>

Натиҷаи иҷрои код:

'Сатҳи вазнинӣ: 2 Огоҳӣ аст: ҳа'

Ҳамчунин нигаред

  • класси Exception,
    класси асосӣ барои ҳамаи истисноҳо дар PHP
  • функсияи set_error_handler,
    ки мудири хатои корбарӣ таъин мекунад
Тоҷикӣ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан