PHP 处理文件上传错误

示例

该$_FILES["FILE_NAME"]['error'](其中"FILE_NAME"是文件输入,存在于你的表单的名称属性的值)可能包含以下值之一:

  1. UPLOAD_ERR_OK -没有错误,文件上传成功。

  2. UPLOAD_ERR_INI_SIZE-上载的档案超过中的upload_max_filesize指令php.ini。

  3. UPLOAD_ERR_PARTIAL -上传的文件超出了HTML表单中指定的MAX_FILE_SIZE指令。

  4. UPLOAD_ERR_NO_FILE -没有文件上传。

  5. UPLOAD_ERR_NO_TMP_DIR-缺少一个临时文件夹。(来自PHP 5.0.3)。

  6. UPLOAD_ERR_CANT_WRITE-无法将文件写入磁盘。(来自PHP 5.1.0)。

  7. UPLOAD_ERR_EXTENSION-PHP扩展程序停止了文件上传。(来自PHP 5.2.0)。

检查错误的基本方法如下:

<?php
$fileError = $_FILES["FILE_NAME"]["error"]; // 其中FILE_NAME是表单中输入文件的名称属性
switch($fileError) {
    case UPLOAD_ERR_INI_SIZE:
        // 超过php.ini中的最大大小
        break;
    case UPLOAD_ERR_PARTIAL:
        // 超过html格式的最大大小
        break;
    case UPLOAD_ERR_NO_FILE:
        // 没有文件上传
        break;
    case UPLOAD_ERR_NO_TMP_DIR:
        // 没有/ tmp目录写入
        break;
    case UPLOAD_ERR_CANT_WRITE:
        // 写入磁盘时出错
        break;
    default:
        //没有遇到错误!!
        break;
}