PHP如何检查图片网址是否为false

时间:2014-05-21 15:53:42

标签: php

如何检查网址是否指向图片文件,以及 http://website.com/images-stories/gallery/image-name.jpg

如果该位置没有文件,则默认为另一个URL(对于默认文件)。

我正在使用file_exists,但意识到检查路径不是网址。

<?PHP
    while ($data = mysqli_fetch_assoc($result)):

    $smaller_img = $data['smaller_img'];


    $url = $smaller_img;
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_HEADER, true);    // we want headers
    curl_setopt($ch, CURLOPT_NOBODY, true);    // we don't need body
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_TIMEOUT,10);
    $output = curl_exec($ch);
    $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);

if ($httpcode=200) 
{
$smaller_imgf=$url;
} else {
$smaller_imgf='../images/submit_icon.png';
}  
    ?>

<img src="<?php echo $smaller_imgf; ?>

1 个答案:

答案 0 :(得分:2)

您可以使用curl查看状态代码200

https://stackoverflow.com/a/11797723/2441442

如果是200,您可以使用getimagesize

检查图像

http://www.php.net/manual/de/function.getimagesize.php