我正在从 Alfresco 读取 PHP 文件,然后将其输出到浏览器。唯一的问题是文件的 MIME 类型或扩展名。这是我正在使用的代码:
<?php
ob_start();
require_once("libs/AlfrescoConnect.php");
$nomeFile = rawurldecode($_GET['nomeFile']);
$urlDownload = $_GET['urlDownload'];
$fileDownloadUrl =
AlfrescoConnect::$serverPath. $urlDownload .
"&attach=true&alf_ticket=".AlfrescoConnect::getTiket();
fb($fileDownloadUrl);
$cnt = file_get_contents($fileDownloadUrl);
header("Content-type: Application/octet-stream");
header('Cache-Control: must-revalidate');
header('Content-disposition: attachment; filename=' .$nomeFile);
echo($cnt);
exit();
echo("Impossibile trovare il file");
我从 get 收到文件的名称,因为我不知道如何从 alfresco 获取名称。但我必须以某种方式猜测模仿类型。如果我echo $cnt
在第一个字符中,则提到它是 PDF 的事实(例如在我看到的屏幕上
%PDF-1.3 %âãÏÓ 2 0 obj << /Length 3 0 R /Filter /CCITTFaxDecode /DecodeParms << /K 0 /Columns 2480 /Rows 3508 >> /Type /XObject /Subtype /Image /Width 2480 /Height 3508 / BitsPerComponent 1 /ColorSpace /DeviceGray >> 流
因此,必须有一种方法可以通过函数从中获取 mime 类型。
任何帮助表示赞赏!
编辑。如果有人对此感兴趣,可以使用一个类来从 mime 类型中获取扩展名。 http://www.ustrem.org/en/articles/mime-type-by-extension-en/