2016-11-19 93 views
1

我尝试检查图像是否存在,以及执行代码时是否显示“Not Image”。PHP:检查链接是否为图像并检查是否存在

if(@is_array(getimagesize("https://media.giphy.com/media/BvvBz8BnRqZOg/giphy.gif"))) { 
    echo "Work"; 
} else { 
    echo "Not Image"; 
} 

问题在哪里,提前致谢!

+0

嗯,我可以在这里运行此代码。如果卷曲此网址会发生什么?另外,我不认为你需要'is_array',因为当参数不是图像或不可用时,getimagesize会返回false。 –

回答

2

尝试

$headers = get_headers('https://media.giphy.com/media/BvvBz8BnRqZOg/giphy.gif', 1); 
if (strpos($headers['Content-Type'], 'image/') !== false) { 
    echo "Work"; 
} else { 
    echo "Not Image"; 
} 

你只需要检查头,看看它,它是一个图像,$头[“内容类型”]在例子是由抓“图像/ GIF”如果声明。参考检查文档中获取标题http://php.net/manual/en/function.getallheaders.php

+0

WoW Work Perfect非常感谢你 –

+0

没问题,不客气 – Davey