Проверьте, существует ли изображение php

Я нахожусь в середине кодирования портала свойств. Я застрял на проверке изображений. Я знаю, как проверить, установлен ли URL-адрес изображения. Но проблема заключается в обнаружении фактического изображения на url.

example: http://property.images.themovechannel.com/cache/7217/6094437/img_main.jpg

Этот URL-адрес изображения существует, но изображение теперь удалено, поэтому оно просто отображается на моей странице поиска простейшей. Есть ли способ проверить, есть ли там изображение в URL-адресе, а затем отображать заполнитель, если он не существует.

что-то вроде

$imageURL = "http://property.images.themovechannel.com/cache/7217/6094437/img_main.jpg";

if (exists($imageURL)) { display image } 
else { display placeholder }

Но все это происходит, проверяя, существует ли url, который он там делает, нет изображения там

Заранее спасибо

Ответ 1

Используйте getimagesize(), чтобы убедиться, что URL указывает на допустимое изображение.

if (getimagesize($imageURL) !== false) {
    // display image
}

Ответ 2

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;
}

Ответ 3

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';
}

Ответ 4

Вы можете использовать функцию use file_exists, чтобы проверить, существует ли изображение, но вы должны указать физический путь изображения

if (file_exists(dirname($_SERVER['SCRIPT_FILENAME']).'/'.$filename))           
{
   // your code here
}