我注意到,当一个YouTube页面崩溃时,它会发出一种编码的消息,可以发送给Youtube的开发者,而无需客户获得有关Youtube基础设施的知识并使用节目评析。有没有一种方法来编码PHP中的错误消息
这个想法是一个与你自己的网站做法吗?
我注意到,当一个YouTube页面崩溃时,它会发出一种编码的消息,可以发送给Youtube的开发者,而无需客户获得有关Youtube基础设施的知识并使用节目评析。有没有一种方法来编码PHP中的错误消息
这个想法是一个与你自己的网站做法吗?
你不需要它与PHP。
与Flash不同,PHP运行在服务器端。所以,只要让PHP记录任何错误消息。
在php.ini文件
log_errors = On
display_errors = Off
设置这些选项,你将不再需要志愿者的用户看到他们
但是只有你的Web服务器的错误日志窥视
我想OP想要一种常见的人类无法理解的*散列代码,但是当开发人员*转换*时,这对他们来说意味着什么。 Youtube不会显示**完全**错误,只是编码的消息不可理解。 – j0k 2013-02-09 09:57:58
大多数框架时下有能够为生产和开发使用不同的应用程序设置。
在生产模式下(当客户正在使用该网站时),出于安全和设计原因,不应出现任何错误。因此,您经常打开log_errors,并关闭display_errors。当出现不可恢复的错误时,用户会看到类似“出错的事情,我们立即将最好的人员放在上面。”向用户显示一些奇怪的号码是没有意义的,例如“错误代码823”。使用cron worker向您发送错误日志,或者只是手动检查日志,并确保错误消息足够详细,以便您跟踪错误。
在开发模式下(当您在开发期间在本地运行站点时),您可能希望在出现错误时立即查看。因此你打开了display_errors。如果设计中断,你可能不介意,并希望你明白发生了什么。
错误消息是程序员最好的朋友,但你的用户不应该去体验他们。如果发生,请确保给用户一些合理的反馈,而不仅仅是空白页或随机错误代码。
只是想的东西像创建一个自定义的错误处理程序,有一些基本的编码/解码功能,它是由你来延长的想法:
// Set error handler
set_error_handler("customError");
// The error function handler
function customError($error, $errorMessage, $errorFile, $errorLine){
echo(encodeError("<b>Error</b> [$error]: $errorMessage, on line $errorLine in $errorFile ."));
}
function encodeError($string){
$array = str_split($string,1);
$results = array();
foreach ($array as $value) {
$results[] = ord($value);
}
return(base64_encode(implode(".", $results)));
}
function decodeError($string){
$array = explode(".", base64_decode($string));
$results = array();
foreach ($array as $value) {
$results[] = chr($value);
}
return (implode("", $results));
}
// Trigger error
echo(3/0);
// We the developers decode it with the decode function
echo('<br><hr>'.decodeError('NjAuOTguNjIuNjkuMTE0LjExNC4xMTEuMTE0LjYwLjQ3Ljk4LjYyLjMyLjkxLjUwLjkzLjU4LjMyLjY4LjEwNS4xMTguMTA1LjExNS4xMDUuMTExLjExMC4zMi45OC4xMjEuMzIuMTIyLjEwMS4xMTQuMTExLjQ0LjMyLjExMS4xMTAuMzIuMTA4LjEwNS4xMTAuMTAxLjMyLjU2LjUzLjMyLjEwNS4xMTAuMzIuNjcuNTguOTIuMTE5Ljk3LjEwOS4xMTIuOTIuMTE5LjExOS4xMTkuOTIuMTAxLjEyMC4xMTIuMTA4LjQ4LjEwNS4xMTYuOTIuMTIyLjEwMS4xMTQuMTExLjQ5LjQ2LjExMi4xMDQuMTEyLjMyLjQ2'));
这将是像超爽...投票Up – Deadlock 2013-02-09 10:00:06