2009-01-14 73 views
3

我正在寻找一个分类MIME类型的代码片段。如何分类MIME类型(PHP)

例如,

应用程序/ msword

应用/ vnd.oasis.opendocument.text

应用/ PDF

双方都有办公文件。当我将这些MIME类型传递给函数时,我希望它返回'办公室','图像','应用程序','压缩'等结果。

但是,如您所知, mime类型,我无法收集所有这些。

你知道我在哪里可以找到它吗?

+0

而分类标准是? – 2009-01-14 13:42:29

+0

我问了一个类似的问题:http://stackoverflow.com/questions/1297915/is-there-a-mapping-between-mimetypes。如果这个问题得到解答,请在那里发帖。 – 2009-08-19 08:21:36

回答

2

我不知道任何现有的脚本会按照您的意愿对这些类型进行分类。您可能需要根据您所需的区别自行创建此功能,例如应用程序/ msword - >办公室而不是应用程序等。

由于您的分类对于您自己的用例而言相当随心所欲,您可能必须自己将其归类为所需的类别,例如。通过使用功能类似下面:

/** 
* Classify mime types into pre-determined categories 
* 2-d array used for simplicity of example, error 
* checking omitted so unrecognised string returns 
* empty value here... 
*/ 
function categorize_mime_types($mime) 
{ 
    // Classify mime types into desired categories, key-val pairings 
    $mimes = array("application/msword"=>"office", 
        "application/vnd.oasis.opendocument.text"=>"office", 
        .... 
        "image/jpeg"=>"image"); 
    return $mimes[$mime]; 
} 

收集所有的MIME类型要做到这一点可能会相当费时,但也有一些网站具有large lists让你开始。