从PHP中输入

上传在Microsoft Power Point中创建的Power Point 2000文档(.ppt)时,它将返回MIME类型的application / vnd.ms-office。 我希望application / vnd.ms-powerpoint可以回来:

    <?php
    $finfo = new finfo(FILEINFO_MIME);
    $mime_type = $finfo->file($filepath);

    // strip off the mime encoding information
    $mime_type = substr($mime_type, 0, strpos($mime_type, ';'));

任何想法为什么这可能是这种情况?

我正在运行以下内容:

  • Ubuntu的
  • PHP 5.2
  • Apache 2

  • finfo不可能100%可靠,特别是涉及到Microsoft Office文档时。 我不认为你的解决方案有一个简单的解决方案。 您可以尝试,如果它返回application/vnd.ms-office ,则另外检查文件的扩展名是否为.ppt ,如果是,请将MIME类型设置为application/vnd.ms-powerpoint 。 当然,扩展是没有意义的,但是使用微软的那些扩展名为.ppt的文件是一个很好的机会,而不是其他任何东西。


    确保Apache MIME类型文件对于该文件扩展具有正确的MIME类型。 你会想看看/conf/mime.types并添加这些行,如果它们不存在。

    application/vnd.powerpoint ppt
    application/vnd.powerpoint pptx
    

    进行这些更改后,您需要重新启动Apache。

    链接地址: http://www.djcxy.com/p/45499.html

    上一篇: type from PHP

    下一篇: Why is mime