2009-01-14 76 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讓你開始。