在 PHP 中验证图像文件
在 PHP 中接收文件时,出于安全原因,确保它们是真实图像至关重要。仅仅依靠文件扩展名检查可能是不可靠的,因为恶意用户可以使用类似图像的扩展名重命名脚本。
使用 getimagesize()
getimagesize() 函数提供确定接收到的文件是否为图像的综合方法。它返回一个包含图像信息的数组,包括其宽度、高度和 MIME 类型。实现方法如下:
<code class="php">if (@is_array(getimagesize($mediapath))) { $image = true; } else { $image = false; }</code>
如果 getimagesize() 函数成功检索到一组信息,则表明该文件是真实的图像。否则,它可能是非图像文件。
示例输出
以下是 getimagesize() 的输出示例:
Array ( [0] => 800 [1] => 450 [2] => 2 [3] => width="800" height="450" [bits] => 8 [channels] => 3 [mime] => image/jpeg)
此输出表明该文件确实是一个宽度为 800 像素、高度为 450 像素、MIME 的图像图像类型/jpeg。
以上是上传的文件真的是图像吗?如何在 PHP 中验证图像文件。的详细内容。更多信息请关注PHP中文网其他相关文章!