我正在编写一个属性门户网站。我坚持检查图像。我知道如何检查是否设置了图像网址。但问题是检测网址上是否确实存在有效图像。
示例:http://property.images.themovechannel.com/cache/7217/6094437/img_main.jpg
此图片网址已存在但图片现已删除,因此它只会在我的搜索页面中显示为空白。有没有办法检查网址上是否有图像,然后显示占位符(如果它不存在)。
类似
$imageURL = "http://property.images.themovechannel.com/cache/7217/6094437/img_main.jpg";
if (exists($imageURL)) { display image }
else { display placeholder }
但所有这一切都是检查网址是否存在,它确实存在没有图像
提前致谢
答案 0 :(得分:25)
使用getimagesize()
确保网址指向有效图片。
if (getimagesize($imageURL) !== false) {
// display image
}
答案 1 :(得分:8)
function exists($uri)
{
$ch = curl_init($uri);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return $code == 200;
}
答案 2 :(得分:0)
function is_webUrl($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
// don't download content
curl_setopt($ch, CURLOPT_NOBODY, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
if (curl_exec($ch) !== FALSE) {
return true;
} else {
return false;
}
}
if(is_webUrl('http://www.themes.tatwerat.com/wp/ah-personal/wp-content/uploads/2016/08/features-ah-wp-view.jpg')) {
echo 'yes i found it';
}else{
echo 'file not found';
}