确定上传的YML和XML文件的MIME类型

问题描述 投票:0回答:1

我正在尝试解析通过laravel nova应用程序上传的文件。我只希望通过YML或XML文件进行解析。

但是为了能够区分上载的文件,我想检查MIME类型,以便可以为XML或YML调用正确的解析器。

但是,在XML的情况下,当将鼠标悬停在上载的文件(交响乐)上时,它会告诉我这是一个“文本/ xml”模仿类型。对于YML,它是“应用程序/八位字节流” MIME类型。

[->getMimeType();选中时,这两个文件都将返回“文本/纯文本” MIME类型>

$mimeType = $file->getMimeType();
$finfo = new \finfo(FILEINFO_MIME_TYPE);
$test = $finfo->file($path);

$mimeType$test均返回“文本/纯文本”。

我是否还有另一种方法来确定XML / YML文件的MIME类型?我期望MIME类型与“ text / xml”,“ application / xml”,“ text / YML”或“ application / yml”类似。

我正在尝试解析通过laravel nova应用程序上传的文件。我只希望通过YML或XML文件进行解析。但是为了能够区分我想要的上传文件...

php xml laravel yaml mime-types
1个回答
0
投票

您的主要问题是YAML does not have a MIME type。即使这样做,MIME类型检测通常也使用magic number完成。由于不需要YAML具有any kind of identifier,因此使用这种类型的检测将很困难,并且您可能会得到不可靠的结果。

© www.soinside.com 2019 - 2024. All rights reserved.