Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >PHP判断远程图片或文件或url是否存在

PHP判断远程图片或文件或url是否存在

作者头像
wangxl
发布于 2018-03-07 07:36:45
发布于 2018-03-07 07:36:45
3.1K0
举报
文章被收录于专栏: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; }

(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 '文件不存在'; }

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2015-06-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 php 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
小程序客服功能开发之对接闲聊机器人
button组件设置open-type="contact"支持打开客服会话,但实际上很多人都不知道此功能如何使用,没必要去申请第三方平台,也不用认证企业号,什么类型的小程序都行,几行代码搞定
许坏
2019/07/18
1.7K0
小程序客服功能开发之对接闲聊机器人
用PHP编写Nagios插件
Nagios插件是Nagios提供的一种可通过扩展方式部署的组件,该插件支持Java、C\C++、php等多种语言开发,操作员通过修改配置文件和相应参数,就能很方便地将该插件集成到Nagios中,实现对目标系统的监控。
星哥玩云
2022/06/30
1.5K0
php判断图片是否存在的几种方法
在我们日常的开发中,经常需要用到判断图片是否存在,存在则显示,不存在则显示默认图片,那么我们用到的判断有哪些呢?今天我们就来看下几个常用的方法:
用户8099761
2023/05/11
1.7K0
PHP网络技术(二)——模拟网络灌水攻防
PHP网络技术(二)——模拟网络灌水攻防 (原创内容,转载请注明来源,谢谢) 一、概念 网络上如留言板、论坛等,可以提交评论的地方,或者其他可以给用户提交内容并且需要存入数据库的地方,就存在灌水的可能。灌水,即破坏者通过大量输入无用信息,造成网站负担严重,数据库存储空间变大,多了大量无用的数据。 二、浏览器 浏览器是一个实现HTTP协议的客户端软件,在整个过程中,作为一个执行者,负责消息发送和接收展示。因此,模拟发送信息就是模拟HTTP协议和服务器进行交互。 三、PHP 在客户端可以用AJAX发送请求
用户1327360
2018/03/07
1.3K0
PHP fopen/file_get_contents与curl性能比较
1.fopen/file_get_contents 每次请求都会重新做 DNS 查询,并不对 DNS 信息进行缓存。
全栈程序员站长
2022/07/11
4620
PHP Curl 中如何分离 headers 和 body 信息
在 PHP 中可以我们通过 Curl 来获取远程网站的数据,同时可以获取到 HTTP Response 的 headers 和 body,它们会一同作为结果返回,这时需要我们自己来分离它们。
Denis
2023/04/15
7670
【笔记】PHP封装的不错的一个Curl方法
温馨提示:本文最后更新于2022-03-07,若文件或内容有错误或已失效,请在下方留言。
NorthS
2023/03/21
4580
PHP监控网站能否正常访问api
批量监控网站返回码是否为200代码如下 <?php header('Content-type: text/html; charset=utf-8'); $urls=array( 'ht
小唐同学.
2022/02/18
2.6K0
PHP使用curl上传文件到远程服务器接口
笔者个人博客 https://qiucode.cn 欢迎大伙围观哦! 当然你的php.ini开启了curl扩展功能 1、文件上传 /** * 以文件上传 第二种方法 */ public function upload(){ $result = array('code' => 0, 'message' => 'ok'); ini_set('upload_max_filesize', '20M'); ini_set('po
游离于山间之上的Java爱好者
2022/12/18
1.5K0
[转] PHP读取HTTP接口如何处理超时
原文地址:https://www.jianshu.com/p/446ea7aaea86
唯一Chat
2019/09/10
1.1K0
php监控网站状态
继上篇文章利用钉钉机器人推送消息 PHP复制PHP复制PHP复制 <?php /** * php 监控网站状态 * User: 神奇的七云 * Date:
Qicloud
2022/01/27
4.9K0
php监控网站状态
指定HOST访问特定网址
平时测试过程中,经常会需要编辑HOST文件来访问特定的服务器。实际上,这个过程也可以在代码中完成。这个实现方式的根本,就是在HTTP请求的Header中,指定请求的HOST。
大江小浪
2021/03/11
3.8K0
彻底解决access_token有效时间不稳定问题
错误码是不会变得,报错内容也不变,唯一就最后那一段变了,所以完全不考虑,所以,简单写一个判断,如下图
许坏
2019/07/09
2.1K0
彻底解决access_token有效时间不稳定问题
关于PHP中的请求上下文的相关知识
我们首先来了解下什么是上下文。在我们写文章,写句子时,都会考虑一个观点或者内容的前后逻辑,转承启合,而在这个观点前后的内容就可以看成是它的上下文内容。它包含了语境的意味在里面,其实代码世界中的上下文也是一样的意思,本身 Context 这个单词就是环境、背景的意思。
硬核项目经理
2020/05/25
8110
PHP使用curl取HTTP状态码
Curl取HTTP状态码 PHP代码 收藏 function curl_200($url){ $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); //设置URL curl_setopt($curl, CURLOPT_HEADER, 1); //获取Header curl_setopt($curl,CURLOPT_NOBODY,true); //Body就不要了吧,我们只是需要Head curl_setopt($curl, CURL
墨渊
2018/05/11
2K4
PHP解决跨域问题常用的方法
比如a.test.com/a.html需要调用b.test.com/index.php,我们可以这样做,写一个接口a.test.com/index.php,由这个接口在后端去调用b.test.com/index.php并拿到返回值,然后再返回给a.html,这就是一个代理的模式。相当于绕过了浏览器端,自然就不存在跨域问题。
友儿
2022/09/11
9630
curl 要么 file_get_contents 获得授权页面的方法的必要性
今天,需要工作,需要使用 curl / file_get_contents 获得授权的必要性(Authorization)的页面内容。解决后写了这篇文章分享给大家。
全栈程序员站长
2022/07/06
1.2K0
初试php中的curl
http://www.wapm.cn/phpdoc/zh/ref.curl.html
meteoric
2018/11/15
1K0
PHP 获取远程文件大小的3种解决方法
1、使用file_get_contents() 复制代码 代码如下: <?php $file = file_get_contents($url); echo strlen(
双面人
2020/01/13
1.8K0
写一个函数,获取一篇文章内容中的全部图片,并下载
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/112590.html原文链接:https://javaforall.cn
全栈程序员站长
2021/12/23
2920
相关推荐
小程序客服功能开发之对接闲聊机器人
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档