365 of 410 menu

Команда throw

Командата throw се използва за явно хвърляне на изключение в PHP. Тя приема един параметър - обект на изключение, който трябва да бъде инстанция на клас, наследен от базовия клас Exception. При извикване на тази функция изпълнението на текущия код незабавно се прекратява, и PHP се опитва да намери съответстващ catch блок за обработка на изключението.

Синтаксис

throw new ExceptionClass(message, code, previous);

Пример

Прост пример за генериране на изключение:

<?php $age = -5; if ($age < 0) { throw new Exception('Age cannot be negative'); } ?>

Резултат от изпълнението на кода:

Fatal error: Uncaught Exception: Age cannot be negative

Пример

Пример с обработка на изключение:

<?php try { $res = 10 / 0; if (is_infinite($res)) { throw new Exception('Division by zero'); } } catch (Exception $e) { echo 'Error: ' . $e->getMessage(); } ?>

Резултат от изпълнението на кода:

'Error: Division by zero'

Пример

Използване на потребителско изключение:

<?php class MyCustomException extends Exception {} try { throw new MyCustomException('Custom error message'); } catch (MyCustomException $e) { echo 'Custom error caught: ' . $e->getMessage(); } ?>

Резултат от изпълнението на кода:

'Custom error caught: Custom error message'

Вижте също

  • конструкцията try,
    която дефинира блок код за обработка на изключения
  • конструкцията catch,
    която улавя и обработва изключения
  • класът Exception,
    който е базов клас за всички изключения
Български
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
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне