目前我没有一个很好的系统来管理错误或成功消息,它们几乎是与代码内联编写的。有人可以建议最佳实践或您正在做的事情,以便能够在整个应用程序中正确管理大量错误和成功消息。
考虑国际化......一些应用程序将有语言文件,然后应用程序只是从特定文件中提取字符串......我正在考虑为错误和成功消息实现类似的概念,并且很好奇其他人做了同样的事情线?
目前我没有一个很好的系统来管理错误或成功消息,它们几乎是与代码内联编写的。有人可以建议最佳实践或您正在做的事情,以便能够在整个应用程序中正确管理大量错误和成功消息。
考虑国际化......一些应用程序将有语言文件,然后应用程序只是从特定文件中提取字符串......我正在考虑为错误和成功消息实现类似的概念,并且很好奇其他人做了同样的事情线?
这是我使用的一个函数:
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 代码产生的所有错误和警告,并在有人访问包含错误的页面时为您创建一个错误页面。
希望这可以帮助!
由于我使用单访问点样式系统来引导应用程序并包含正确的文件(它基本上是一个控制器系统),因此我可以使用:
<?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
找到我发现的错误消息,但它并不是很有条理。
您可能会使用 PHP Documentor 之类的东西,并在每个类的文档中包含错误和消息。