//判断远程文件
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;
}
(1)使用fopen()函数,它要在allow_url_open开启的状态下,否则会报错。
$url = 'http://www.111cn.net /img/qrcode_for_phpddt.JPG';
if(@fopen($url, 'r')) {
echo '文件存在';
} else {
echo '文件不存在';
}
(2)get_headers取得服务器响应一个 HTTP 请求所发送的所有标头,效率较低,你可以测试下。
$url = 'http://www.111cn.net /img/qrcode_for_phpddt.JPG';
stream_context_set_default(
array(
'http' => array(
'timeout' => 1,
)
)
);
$headers = get_headers($url);
if(preg_match('/200/',$headers[0])) {
echo '文件存在';
} else {
echo '文件不存在';
}
(3)file_get_contents()函数
$opts = array(
'http'=>array(
'timeout'=>3,
)
);
$context = stream_context_create($opts);
$resource = @file_get_contents('http://www.111cn.net /img/qrcode_for_phpddt.JPG', false, $context);
if($resource) {
echo '文件存在';
} else {
echo '文件不存在';
}
PHP判断远程图片或文件或url是否存在
原创
©著作权归作者所有:来自51CTO博客作者WXL的原创作品,请联系作者获取转载授权,否则将追究法律责任
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
教你如何判断Java代码中异步操作是否完成
本篇文章将介绍几种常见的方法来判断Java代码中异步操作是否完成。
java 异步任务 异步操作 -
图片链接ALT
今天在做个站,要像迅雷看看(WWW.KANKAN.XUNLEI.COM)里面那样,当鼠标滑过图片时,显示出一些概要信息。
职场 休闲 alt 图片链接 概要信息 -
原生js判断链接是否有效
原生js判断链接是否有效;这很简单,我们可以通过请求的方式确定是否有效。本文通过ajax和jsonp实现。
javascript ajax 前端 json 跨域