Maison  >  Article  >  développement back-end  >  Comment les fonctions PHP renvoient-elles des erreurs ?

Comment les fonctions PHP renvoient-elles des erreurs ?

王林
王林original
2024-04-10 21:03:02324parcourir

Les fonctions PHP peuvent renvoyer des erreurs des manières suivantes : Renvoyer directement une valeur d'erreur : utilisez la fonction error_get_last() pour obtenir les informations d'erreur précédentes. Lancer une exception : utilisez le mot-clé throw pour créer un objet d'exception contenant des informations détaillées sur l'erreur.

PHP 函数如何返回错误?

Comment les fonctions PHP renvoient des erreurs

En PHP, les fonctions peuvent renvoyer des erreurs de deux manières : en renvoyant directement une valeur d'erreur ou en lançant une exception.

Renvoyer directement la valeur d'erreur

Pour renvoyer directement une valeur d'erreur, vous pouvez utiliser la fonction error_get_last(). Cette fonction renvoie un tableau contenant le message d'erreur précédent. Par exemple : error_get_last() 函数。该函数返回一个包含上一个错误信息的数组。例如:

<?php

function divide($dividend, $divisor) {
  if ($divisor == 0) {
    return error_get_last();
  }

  return $dividend / $divisor;
}

echo divide(10, 2); // 5
echo divide(10, 0); // Array ( [type] => 2 [message] => Division by zero [file] => /path/to/file.php [line] => 10 )
?>

在这种情况下,divide() 函数如果遇到除数为 0 的情况,则会返回一个错误数组,包含错误类型、错误信息、错误发生的文件和行号。

抛出一个异常

要抛出一个异常,可以使用 throw 关键字。异常是一个对象,包含有关错误的详细信息。例如:

<?php

class DivisionByZeroException extends Exception {}

function divide($dividend, $divisor) {
  if ($divisor == 0) {
    throw new DivisionByZeroException('Division by zero');
  }

  return $dividend / $divisor;
}

try {
  echo divide(10, 2); // 5
  echo divide(10, 0); // DivisionByZeroException: Division by zero
} catch (DivisionByZeroException $e) {
  echo $e->getMessage(); // Division by zero
}
?>

在这种情况下,divide() 函数如果遇到除数为 0 的情况,会抛出一个 DivisionByZeroException 异常。该异常包含错误信息,可以由捕获异常的 try-catchrrreee

Dans ce cas, si la fonction divide() rencontre une division par 0, elle renverra un tableau d'erreur, comprenant le type d'erreur, le message d'erreur, le fichier où l'erreur s'est produite, et numéro de ligne. 🎜🎜🎜Lancer une exception🎜🎜🎜Pour lever une exception, vous pouvez utiliser le mot-clé throw. Une exception est un objet qui contient des informations détaillées sur l'erreur. Par exemple : 🎜rrreee🎜Dans ce cas, la fonction divide() lèvera une exception DivisionByZeroException si elle rencontre une division par 0. L'exception contient des informations sur l'erreur et est accessible par le bloc try-catch qui intercepte l'exception. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn