PHP文件大小限制消息

时间:2011-01-26 03:46:44

标签: php apache

我们正在使用post_max_sizeupload_max_filesize PHP变量来阻止用户将大文件上传到我们的网络应用中。

问题是PHP抛出的错误信息对用户来说是丑陋的,并没有多说(特别是对于西班牙语用户)。因此,用户将此报告为错误或认为它无效。

如何更改此页面并显示我们自己的页面(更方便用户和西班牙语)?

非常感谢!

2 个答案:

答案 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>'