图片检测 - PHP判断真实图片
Jun 06, 2016 pm 08:22 PM
系统会定时从一些站点的指定目录获取图片,这些图片不一定存在。
那么问题来了:各站点由于Web服务器和其配置大不相同,可能存在以下几种情况:
1.图片存在,返回 200 - OK
;
2.图片不存在,返回 404 - Not Found
;
3.图片存在,但是可能由于防火墙等原因,返回的不一定为图片信息;
4.图片不存在,但是可能由于安全狗等原因,返回的是状态码为 200
,页面内容中包含或不包含 404
字样;
那么,有没有一种方法可以判断字符串是否为真实的图片?
回复内容:
系统会定时从一些站点的指定目录获取图片,这些图片不一定存在。
那么问题来了:各站点由于Web服务器和其配置大不相同,可能存在以下几种情况:
1.图片存在,返回 200 - OK
;
2.图片不存在,返回 404 - Not Found
;
3.图片存在,但是可能由于防火墙等原因,返回的不一定为图片信息;
4.图片不存在,但是可能由于安全狗等原因,返回的是状态码为 200
,页面内容中包含或不包含 404
字样;
那么,有没有一种方法可以判断字符串是否为真实的图片?
array getimagesize ( string $filename [, array &$imageinfo ] )
可以使用getimagesize()
函数,如果不能访问 filename 指定的图像或者其不是有效的图像,getimagesize() 将返回 FALSE 并产生一条 E_WARNING 级的错误。
getimagesize — 取得图像大小
文档地址:http://php.net/manual/zh/function.getimagesize.php
你可以尝试一下:
<code>print_r(exif_imagetype("http://www.baidu.com/img/baidu_jgylogo3.gif"));</code>
以下是图像类型常量:
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

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian

Comment configurer Visual Studio Code (VS Code) pour le développement PHP
