У меня есть функция, чтобы проверить, является ли изображение действительным, и если оно печатается, img на экране.
<?php
function isImage($url){
$url_headers=get_headers($url, 1);
if($url_headers[0] == 'HTTP/1.1 404 Not Found') {
$url_exists = false;
}
else {
$url_exists = true;
}
if($url_exists){
if(isset($url_headers['Content-Type'])){
$type=strtolower($url_headers['Content-Type']);
$valid_image_type=array();
$valid_image_type['image/png']='';
$valid_image_type['image/jpg']='';
$valid_image_type['image/jpeg']='';
$valid_image_type['image/jpe']='';
$valid_image_type['image/gif']='';
if(isset($valid_image_type[$type])){
return true;
}
else{
return false;
}
}
}
}
if(isImage("http://curiosidadeslegais.org/wp-content/uploads/2016/08/zuera-pa-w5app.jpg")){
echo '<img src="http://curiosidadeslegais.org/wp-content/uploads/2016/08/zuera-pa-w5app.jpg" alt="">';
}
проблема в том, что я не знаю, почему страница занимает так много времени вURL выше.Изображение больше не существует.и html печатает:
<html>
<head>
<meta name="robots" content="noarchive" />
<meta name="googlebot" content="nosnippet" />
</head>
<body>
<div align=center>
<h3>Error. Page cannot be displayed. Please contact your service provider for more details. (9)</h3>
</div>
</body>
</html>
Я не знаю, почему моей функции требуется много времени, чтобы убедиться, что это не изображение, и игнорирует его.есть идеи почему?
Должно быть быстро проверить, существует изображение или нет, печатать его или нет.но в этом случае это занимает так много времени.