我正在寻找一个列表/描述,详细说明php基于上传的文件分配的文件类型。
我有以下脚本。它需要上传的文件和文件类型。将其与数组进行比较以检查该类型是否被允许,然后继续执行脚本。
$file = $_FILES['attachment']['tmp_name'];
//check file is correct type
$fileType = $_FILES['attachment']['type'];
// array of allowed file extensions
$fileTypeArray = ["application/pdf", "application/doc", "application/docx", "application/rtf", "application/txt", "application/odf", "application/msword"];
// now check that the file type matches that of the array.
if (!in_array($fileType, $fileTypeArray)){
Run Code Online (Sandbox Code Playgroud)
我想允许任何上传doc,pdf,txt等,其目的是处理上传的简历。请告诉我您是否能想到更好的解决方案。干杯!
这些媒体类型实际上是 MIME 类型并且 PHP 管理它们(以下摘自MDN)
媒体类型(也称为多用途 Internet 邮件扩展或 MIME 类型)是指示文档、文件或字节分类的性质和格式的标准。它在 IETF 的RFC 6838 中进行了定义和标准化。
在互联网编号分配机构(IANA)负责所有官方和MIME类型,你可以找到他们的最先进的最新和完整列表媒体类型页。
其中有一些,列表可能会扩展。
为了您的比较,我认为您想手动定义可接受的类型,因为使用泛型类型列表会导致所有类型都可以接受(这似乎不是您的目标)
我还会添加指向输入手册页的链接,并建议您阅读该accept属性,该属性可以直接在客户端过滤您的文件
如果type属性的值为file,则该属性表示服务器接受的文件类型;否则将被忽略。该值必须是以逗号分隔的唯一内容类型说明符列表:
不要让文字愚弄你;如果文件不是accepted 文件类型,用户将无法选择该文件,但请注意,服务器需要验证该文件,并且可以直接向服务器提交表单并绕过任何客户端验证。
| 归档时间: |
|
| 查看次数: |
11474 次 |
| 最近记录: |