Η Κλάση Exception

Η κλάση Exception αντιπροσωπεύει τη βασική κλάση για όλες τις εξαιρέσεις στην PHP. Περιέχει βασικές μεθόδους για εργασία με εξαιρέσεις: λήψη μηνύματος σφάλματος, κωδικού σφάλματος, αρχείου και γραμμής όπου προέκυψε η εξαίρεση, καθώς και της στοίβας κλήσεων. Κατά τη δημιουργία μιας εξαίρεσης μπορείτε να περάσετε μήνυμα, κωδικό σφάλματος και προηγούμενη εξαίρεση.

Σύνταξη

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

Παράδειγμα

Δημιουργήστε και χειριστείτε μια απλή εξαίρεση:

php<?php
  try {
    throw new Exception('Κάτι πήγε στραβά', 100);
  } catch (Exception $e) {
    echo 'Σφάλμα: ' . $e->getMessage();
  }
?>

Αποτέλεσμα εκτέλεσης κώδικα:

php'Σφάλμα: Κάτι πήγε στραβά'

Παράδειγμα

Χρησιμοποιήστε τις κύριες μεθόδους της κλάσης Exception:

php<?php
  try {
    throw new Exception('Δοκιμαστική εξαίρεση', 123);
  } catch (Exception $e) {
    echo 'Μήνυμα: ' . $e->getMessage() . "\n";
    echo 'Κωδικός: ' . $e->getCode() . "\n";
    echo 'Αρχείο: ' . $e->getFile() . "\n";
    echo 'Γραμμή: ' . $e->getLine() . "\n";
  }
?>

Αποτέλεσμα εκτέλεσης κώδικα (παράδειγμα):

php'Μήνυμα: Δοκιμαστική εξαίρεση
Κωδικός: 123
Αρχείο: /path/to/file.php
Γραμμή: 3'

Παράδειγμα

Λάβετε τη στοίβα κλήσεων κατά τη δημιουργία εξαίρεσης:

php<?php
  function test() {
    throw new Exception('Δοκιμαστική στοίβα κλήσεων');
  }
  
  try {
    test();
  } catch (Exception $e) {
    print_r($e->getTrace());
  }
?>

Αποτέλεσμα εκτέλεσης κώδικα (παράδειγμα):

php[
  [
    'file' => '/path/to/file.php',
    'line' => 5,
    'function' => 'test',
    'args' => []
  ]
]

Δείτε επίσης

  • την κλάση ErrorException,
    που αντιπροσωπεύει σφάλματα ως εξαιρέσεις
  • τη συνάρτηση set_exception_handler,
    που ορίζει έναν προσαρμοσμένο χειριστή εξαιρέσεων