搜索
图片检测 - PHP判断真实图片
怪我咯
怪我咯 2017-04-10 16:29:01
[PHP讨论组]

系统会定时从一些站点的指定目录获取图片,这些图片不一定存在。

那么问题来了:各站点由于Web服务器和其配置大不相同,可能存在以下几种情况:

1.图片存在,返回 200 - OK ;
2.图片不存在,返回 404 - Not Found ;
3.图片存在,但是可能由于防火墙等原因,返回的不一定为图片信息;
4.图片不存在,但是可能由于安全狗等原因,返回的是状态码为 200,页面内容中包含或不包含 404 字样;

那么,有没有一种方法可以判断字符串是否为真实的图片?

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(2)
天蓬老师

array getimagesize ( string $filename [, array &$imageinfo ] )

可以使用getimagesize()函数,如果不能访问 filename 指定的图像或者其不是有效的图像,getimagesize() 将返回 FALSE 并产生一条 E_WARNING 级的错误。

getimagesize — 取得图像大小
文档地址:http://php.net/manual/zh/function.getimagesize.php

黄舟

你可以尝试一下:

print_r(exif_imagetype("http://www.baidu.com/img/baidu_jgylogo3.gif"));

以下是图像类型常量:
1 IMAGETYPE_GIF
2 IMAGETYPE_JPEG
3 IMAGETYPE_PNG
4 IMAGETYPE_SWF
5 IMAGETYPE_PSD
6 IMAGETYPE_BMP
7 IMAGETYPE_TIFF_II(Intel 字节顺序)
8 IMAGETYPE_TIFF_MM(Motorola 字节顺序)
9 IMAGETYPE_JPC
10 IMAGETYPE_JP2
11 IMAGETYPE_JPX
12 IMAGETYPE_JB2
13 IMAGETYPE_SWC
14 IMAGETYPE_IFF
15 IMAGETYPE_WBMP
16 IMAGETYPE_XBM

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号