En-têtes PHP xls, xlsx, ppt, pptx
Voici mon code où j'essaie d'envoyer un en-tête correct depedning sur un type de document. J'ai compris les en-têtes pour pdf, doc et docx mais j'ai toujours besoin de connaître 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);
4 réponses
.xls
Application / vnd. ms-excel
.xlsx
Application / vnd.openxmlformats-officedocument.spreadsheetml.feuille
.ppt
Application / vnd. ms-powerpoint
.pptx
Application / vnd.openxmlformats-officedocument.presentationml.présentation
Et l'un de ceux que vous avez énumérés, est faux:
.docx
Application / vnd.openxmlformats-officedocument.wordprocessingml.document
Voir http://www.w3schools.com/media/media_mimeref.asp .
Xls est application/vnd.ms-excel
, ppt est application/vnd.ms-powerpoint
.
Comme la plupart des types demandés sont liés à Microsoft Office, ce lien contient tous les types office mime (la meilleure source ciblée que j'ai trouvée jusqu'à présent): http://filext.com/faq/office_mime_types.php
Vous pouvez simplement echo $_FILES ['input_tag_name'] ['type'] après avoir téléchargé un fichier pour connaître le type MIME de ce fichier.