我们正在使用post_max_size
和upload_max_filesize
PHP变量来阻止用户将大文件上传到我们的网络应用中。
问题是PHP抛出的错误信息对用户来说是丑陋的,并没有多说(特别是对于西班牙语用户)。因此,用户将此报告为错误或认为它无效。
如何更改此页面并显示我们自己的页面(更方便用户和西班牙语)?
非常感谢!
答案 0 :(得分:1)
我认为你正在寻找set_error_handler()。
所以(来自手册)的内容:
function myErrorHandler($errno, $errstr, $errfile, $errline)
{
if (!(error_reporting() & $errno)) {
// This error code is not included in error_reporting
return;
}
switch ($errno) {
case UPLOAD_ERR_INI_SIZE:
echo "<b>My ERROR</b> [$errno] $errstr<br />\n";
echo " Fatal error on line $errline in file $errfile";
echo ", PHP " . PHP_VERSION . " (" . PHP_OS . ")<br />\n";
echo "Aborting...<br />\n";
exit(1);
break;
default:
echo "Unknown error type: [$errno] $errstr<br />\n";
break;
}
/* Don't execute PHP internal error handler */
return true;
}
$old_error_handler = set_error_handler("myErrorHandler");
答案 1 :(得分:0)
捕获错误并输出自定义消息。
try {
// your code
} catch (Exception $e) {
if($e->getCode() == some code){
$message = 'some message';
}else{
$message = 'some other message';
}
}
echo '<div>'.$message.'</div>'