我想知道你是否知道我可以在我的脚本中包含的任何好的和准确的PHP库或文件,以便分析X文件的内容,然后检查它是否是特定类型,如.doc,.docx .jpg等等。
我知道PHP提供了大量可用于检查它们的库,但它们根本不准确,有些只检查文件扩展名或文件头(他们甚至不知道文件是否存在是否破碎)
我要求的是非常准确,简单和快速的东西(可能是我要求太多),但任何链接或建议都会被接受和赞赏,谢谢!
答案 0 :(得分:1)
据我所知,没有这样的图书馆;拥有一个也没有意义。
假设我有jpeg图像我想分析,标题可能会好,但图像本身已经坏了,当我想转换它们或剪切它们用于缩略图时(使用GD库我就是那个)使用)函数(主要是imagecreatefromjpeg)会给我带来错误,为了创建一个好的缩略图,我需要一个有效的图像。
使用格式错误的标题捕获格式错误的JPG文件的最佳位置是GD在尝试处理时出错。只需以透明有用的方式处理(=让用户知道出了问题)。为什么要添加基本上必须执行相同操作的额外代码?
通过在错误发生时处理错误,您还可以捕获到文件的简单分析无法揭示的问题 - 例如,GD无法处理CMYK JPG。尽管如此,CMYK JPG仍然是完全有效的文件。另一个例子是文件太大而无法在服务器上处理。
当然,您可以事先对每个上传的文件进行标题或大小检查。但是一个单独的检查就像你想要的那样深刻没有意义。
除此之外,我希望能够防止病毒或代码注入..
这不是一个现实的目标。如果使用打开文件来检查文件的库容易受到注入,该怎么办?
此外,这样的注射非常罕见;图书馆漏洞往往被广泛宣传,并迅速提供补丁。只需让您的机器保持最新状态。
如果您确实需要企业级病毒防护,请获取服务器端病毒检测产品。
答案 1 :(得分:0)
我为此做的是打开文件,阅读文件并搜索文件标题。其中大多数都以维基百科格式定义提供。
%PDF for pdf,前4个字符。 png的%PNG,前4个字符。
还没有看到一个图书馆这样做。