[PHP文件上传下载]③--服务端限制

[PHP文件上传下载]③--服务端限制_第1张图片
Paste_Image.png
 int 224
  1 => int 224
  2 => int 2
  3 => string 'width="224" height="224"' (length=24)
  'bits' => int 8
  'channels' => int 3
  'mime' => string 'image/jpeg' (length=10)
 */

?>



请选择您要上传的文件:

doAction.php

 $maxSize) {
        exit("上传文件过大");
    }
    //$ext=strtolower(end(explode('.',$fileInfo['name'])))
    $ext = pathinfo($fileInfo['name'], PATHINFO_EXTENSION);
    if (!in_array($ext, $allowExt)) {
        exit("非法文件类型");
    }
    //判断是否是通过HTTP POST文件上传上来的
    if (!is_uploaded_file($fileInfo['tmp_name'])) {
        exit('文件不是通过HTTP POST 方式上传来的');
    }
    //检测是否为真实的图片类型
    if ($flag) {
        if (!getimagesize($fileInfo['tmp_name'])) {
            exit('不是真正的图片类型');
        }
    }
    $path = 'uploads';
    if (!file_exists($path)) {
        mkdir($path, 0777, true);
        chmod($path, 0777);
    }
    //确保文件名唯一,防止重名产生覆盖
    $uniName = md5(uniqid(microtime(true), true)) . '.' . $ext;
    $destination = $path . '/' . $uniName;//uploads/e8b67f2be200f625ef111b4f3352903b.jpeg
    if (@move_uploaded_file($fileInfo['tmp_name'], $destination)) {
        echo "文件上传成功";
    } else {
        echo "文件上传失败";
    }
} else {
    switch ($fileInfo['error']) {
        case 1:
            echo "上传文件超过了PHP配置文件中upload_max_file";
            break;
        case 2:
            echo "超过了表单MAX_FILE_SIZE";
            break;
        case 3:
            echo "文件部分被上传";
            break;
        case 4:
            echo "没有选择上传文件";
            break;
        case 6:
            echo "没有找到临时目录";
            break;
        case 7:
        case 8:
            echo "系统错误";
            break;
    }
}

?>
Paste_Image.png
Paste_Image.png

你可能感兴趣的:([PHP文件上传下载]③--服务端限制)