当前位置: 首页 » 笔记 » PHP判断远程图片是否存在正文

PHP判断远程图片是否存在

  • 零分
  • 2,863

PHP判断远程图片是否存在,如果不存在则调用默认的图片,存在使用远程图片,有时候是蛮有用处的。

PHP 代码:

function check_remote_file_exists($url) {
    $curl = curl_init($url);
    // 不取回数据
    curl_setopt($curl, CURLOPT_NOBODY, true);
    // 发送请求
    $result = curl_exec($curl);
    $found = false;
    // 如果请求没有发送失败
    if ($result !== false) {
        // 再检查http响应码是否为200
        $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
        if ($statusCode == 200) {
            $found = true;
        }
    }
    curl_close($curl);


    return $found;
}

判断代码:

$exists = check_remote_file_exists($img);
if (!$exists) {
    echo $img.' 这张图片不存在<br><br>';
        }else{
    echo '<img src="'.$img.'"><br><br>'     ;
        }

例子:

<?php
@header('Content-type: text/html;charset=UTF-8');
function check_remote_file_exists($url) {
    $curl = curl_init($url);
    // 不取回数据
    curl_setopt($curl, CURLOPT_NOBODY, true);
    // 发送请求
    $result = curl_exec($curl);
    $found = false;
    // 如果请求没有发送失败
    if ($result !== false) {
        // 再检查http响应码是否为200
        $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
        if ($statusCode == 200) {
            $found = true;
        }
    }
    curl_close($curl);


    return $found;
}
?>
<?php
$imgarr=array(
"//img.32xp.com/photo_20150816221103.jpg",
"//img.32xp.com/photo_201508162211030.jpg"
);
foreach($imgarr as $img){
    $exists = check_remote_file_exists($img);
if (!$exists) {
    echo $img.' 这张图片不存在<br><br>';
        }else{
    echo '<img src="'.$img.'"><br><br>'     ;
        }
}
?>

其实,这个应该也可以判断其他文件类型是否存在

声明:博客中如无特殊说明或标注的文章均为博客原创文章,部分文章来源互联网,如有侵犯您的版权,或者对零分博客发布的文章有异议,请来信告知删除、修改,如您有好的建议或者意见也可以来信,谢谢!

请TA喝杯水^_^ 如本文“对您有用”,欢迎随意打赏,让我们坚持创作! 请TA喝水