4

目前我没有一个很好的系统来管理错误或成功消息,它们几乎是与代码内联编写的。有人可以建议最佳实践或您正在做的事情,以便能够在整个应用程序中正确管理大量错误和成功消息。

考虑国际化......一些应用程序将有语言文件,然后应用程序只是从特定文件中提取字符串......我正在考虑为错误和成功消息实现类似的概念,并且很好奇其他人做了同样的事情线?

4

3 回答 3

1

这是我使用的一个函数:

function checkErrors($type, $msg, $file, $line, $context) {
   echo "<h1>Error!</h1>";
   echo "An error occurred while executing this script. Please contact the <a href=mailto:webmaster@somedomain.com>webmaster</a> to report this error.";
   echo "<p />";
   echo "Here is the information provided by the script:";
   echo "<hr><pre>";
   echo "Error code: $type<br />";
   echo "Error message: $msg<br />";
   echo "Script name and line number of error: $file:$line<br />";
   $variable_state = array_pop($context);
   echo "Variable state when error occurred: ";
   print_r($variable_state);
   echo "</pre><hr>";
} 
set_error_handler('checkErrors'); 

它将为您提供 PHP 代码产生的所有错误和警告,并在有人访问包含错误的页面时为您创建一个错误页面。

希望这可以帮助!

于 2009-07-14T23:34:19.850 回答
0

由于我使用单访问点样式系统来引导应用程序并包含正确的文件(它基本上是一个控制器系统),因此我可以使用:

<?php
try {
    require 'bootstrap.php';
    // dispatch controller
    require "controllers/$controller.php";
} catch (Exception $e) {
    // echo info
} catch (LibraryException $le) {
    // library specific exception
}

然后,当我想抛出错误时,我只是:

throw new Exception('An error occurred.');

有人可以建议最佳实践或您正在做的事情,以便能够在整个应用程序中正确管理大量错误和成功消息。

这是我批量管理错误的方式,但不是管理列表的方式。我可以grep找到我发现的错误消息,但它并不是很有条理。

于 2009-07-14T23:45:03.713 回答
0

您可能会使用 PHP Documentor 之类的东西,并在每个类的文档中包含错误和消息。

http://www.phpdoc.org/

于 2009-07-15T00:02:39.777 回答