365 of 410 menu

Comanda throw

Comanda throw este utilizată pentru aruncarea explicită a unei excepții în PHP. Ea acceptă un singur parametru - un obiect excepție, care trebuie să fie o instanță a unei clase, moștenită din clasa de bază Exception. La apelarea acestei funcții, executarea codului curent se oprește imediat, iar PHP încearcă să găsească blocul catch corespunzător pentru gestionarea excepției.

Sintaxă

throw new ExceptionClass(message, code, previous);

Exemplu

Un exemplu simplu de generare a unei excepții:

<?php $age = -5; if ($age < 0) { throw new Exception('Vârsta nu poate fi negativă'); } ?>

Rezultatul executării codului:

Fatal error: Uncaught Exception: Vârsta nu poate fi negativă

Exemplu

Exemplu cu gestionarea excepției:

<?php try { $res = 10 / 0; if (is_infinite($res)) { throw new Exception('Împărțire la zero'); } } catch (Exception $e) { echo 'Eroare: ' . $e->getMessage(); } ?>

Rezultatul executării codului:

'Eroare: Împărțire la zero'

Exemplu

Utilizarea unei excepții personalizate:

<?php class MyCustomException extends Exception {} try { throw new MyCustomException('Mesaj de eroare personalizat'); } catch (MyCustomException $e) { echo 'Eroare personalizată prinsă: ' . $e->getMessage(); } ?>

Rezultatul executării codului:

'Eroare personalizată prinsă: Mesaj de eroare personalizat'

Vezi și

  • constructia try,
    care definește un bloc de cod pentru gestionarea excepțiilor
  • constructia catch,
    care interceptează și gestionează excepțiile
  • clasa Exception,
    care este clasa de bază pentru toate excepțiile
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge