Die Exception-klas

Die klas Exception verteenwoordig die basiese klas vir alle uitsonderings in PHP. Dit bevat die basiese metodes om met uitsonderings te werk: om die foutboodskap te kry, foutkode, lêer en reël waar die uitsondering ontstaan het, sowel as die stapelroep. Wanneer 'n uitsondering geskep word, kan 'n boodskap, foutkode en vorige uitsondering oorgedra word.

Sintaksis

phpnew Exception(string $message = "", int $code = 0, Throwable $previous = null);

Voorbeeld

Kom ons skep en verwerk 'n eenvoudige uitsondering:

php<?php
  try {
    throw new Exception('Iets het verkeerd geloop', 100);
  } catch (Exception $e) {
    echo 'Fout: ' . $e->getMessage();
  }
?>

Resultaat van die kode-uitvoering:

php'Fout: Iets het verkeerd geloop'

Voorbeeld

Kom ons gebruik die basiese metodes van die Exception-klas:

php<?php
  try {
    throw new Exception('Toets-uitsondering', 123);
  } catch (Exception $e) {
    echo 'Boodskap: ' . $e->getMessage() . "\n";
    echo 'Kode: ' . $e->getCode() . "\n";
    echo 'Lêer: ' . $e->getFile() . "\n";
    echo 'Reël: ' . $e->getLine() . "\n";
  }
?>

Resultaat van die kode-uitvoering (voorbeeld):

php'Boodskap: Toets-uitsondering
Kode: 123
Lêer: /pad/na/lêer.php
Reël: 3'

Voorbeeld

Kom ons kry die stapelroep met 'n uitsondering:

php<?php
  function toets() {
    throw new Exception('Stapelroep-toets');
  }
  
  try {
    toets();
  } catch (Exception $e) {
    print_r($e->getTrace());
  }
?>

Resultaat van die kode-uitvoering (voorbeeld):

php[
  [
    'lêer' => '/pad/na/lêer.php',
    'reël' => 5,
    'funksie' => 'toets',
    'args' => []
  ]
]

Sien ook