【问题标题】:How to check mimetype from uploaded file in php [duplicate]如何在php中检查上传文件的mimetype [重复]
【发布时间】:2017-08-17 09:45:43
【问题描述】:

我的上传功能中有一个 mimetype 检查,用于检查上传的文件是否为图像。 我想允许上传图片和 pdf 文件,但我不知道如何更改我的功能。

$verifyimg = getimagesize($_FILES['image']['tmp_name'][$f]);
            $pattern = "#^(image/)[^\s\n<]+$#i";
            if(!preg_match($pattern, $verifyimg['mime']))
            {
                $err;
            }

我希望有人能告诉我如何更改 $pattern 变量来检查图像和 pdf 文件。

周末愉快!

【问题讨论】:

  • 我们的代码不足以帮助你
  • 来吧,这并不难。类似if(!preg_match($pattern, $verifyimg['mime']) &amp;&amp; $verifyimg['mime'] != 'application/pdf')
  • 抱歉,这是唯一会检查文件类型的代码片段
  • 感谢您的评论 ceejayoz,但如果我尝试上传 pdf 文件,我每次都会出错。图片部分我工作正常!
  • 尝试更改您的代码,例如application/x-pdf...x-pdf 可能用于与旧软件的兼容性。

标签: php file-upload mime-types


【解决方案1】:

您可以像这样使用mime_content_type 内置函数:

<?php

$file = "C:\\users\\username\\desktop\\mypic.png";

echo mime_content_type($file); // prints "image/png"
?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-21
    • 2010-09-23
    相关资源
    最近更新 更多