web-dev-qa-db-fra.com

PHP xls, xlsx, ppt, pptx en-têtes

Voici mon code où j'essaie d'envoyer un en-tête correct dépendant d'un type de document. J'ai trouvé les en-têtes pour pdf, doc et docx mais j'ai encore besoin de savoir l'en-tête correct pour les fichiers Excel et PowerPoint.

Toute aide appréciée.

    $document = urldecode($_GET['document']);
    $extension = end(explode('.', $document));
    $mimeType = '';
    switch ($extension) {
        case 'pdf':
            $mimeType = 'pdf';
            break;
        case 'doc':
            $mimeType = 'msword';
            break;
        case 'docx':
            $mimeType = 'msword';
            break;
        case 'xls':
            $mimeType = '';
            break;
        case 'xlsx':
            $mimeType = '';
            break;
        case 'ppt':
            $mimeType = '';
            break;
        case 'pptx':
            $mimeType = '';
            break;
    }       
    header('Content-type: application/' . $mimeType);
22
Richard Knop

. xls

application/vnd.ms-Excel

. xlsx

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

. ppt

application/vnd.ms-PowerPoint

. pptx

application/vnd.openxmlformats-officedocument.presentationml.presentation

Et l'un de ceux que vous avez énumérés est faux:

. docx

application/vnd.openxmlformats-officedocument.wordprocessingml.document

96
Mark Baker

Voir http://www.w3schools.com/media/media_mimeref.asp .

xls est application/vnd.ms-Excel, ppt est application/vnd.ms-PowerPoint.

5
Maerlyn

Étant donné que la plupart des types demandés sont liés à Microsoft Office, ce lien contient tous les types de mime de bureau (la meilleure source ciblée que j'ai trouvée jusqu'à présent): http://filext.com/faq/office_mime_types.php

3
Code Jockey