【发布时间】:2019-02-09 11:44:00
【问题描述】:
我需要在 php/laravel 中检查文件是图片还是 pdf。
这就是我现在拥有的:
return $file['content-type'] == 'image/*';
除了 'image/*' 我还需要添加 'application/pdf'
如何添加?
更新
为了更清楚,有没有一种方法可以添加更多允许的类型而无需执行 OR 条件。我现在用 in_array 得到了答案!
【问题讨论】:
-
你是问如何在php中添加OR条件??
-
但请注意,
$file['content-type']可以伪造 -
我个人会远离任何框架,直到我了解该语言的基础知识..
-
@Devon 感谢您的帮助和鼓励!
-
@Olof “你会如何检查它?”。这就是重点,你真的做不到。上传文件时,您会从客户端获得一个值。客户端可以将值设置为任何它想要的值。您可以与文件扩展名进行交叉检查......但是文件扩展名也可以设置为任何内容,而不管文件的实际内容如何。真正分辨的唯一方法是尝试使用一些旨在读取 PDF 文件的软件/库来读取文件,并查看它是否可以从中读取。图像也一样。但这需要 CPU 和 I/O 时间。取决于你想用这个值做什么,你关心多少。