PHP判断远程图片或文件是否存在的实现代码


Posted in PHP onFebruary 20, 2014

最简单的方法就是用fopen(),看看文件能否打开,能打就文件当然就存在

<?php
$url = 'https://3water.com/images/test.jpg';
if( @fopen( $url, 'r' ) ) 
{ 
    echo 'File Exits';
} 
else 
{
    echo 'File Do Not Exits';
}
?>

语法:fopen(filename,mode,include_path,context)
参数 描述
filename 必需。规定要打开的文件或 URL。
mode 必需。规定要求到该文件/流的访问类型。可能的值见下表。
include_path 可选。如果也需要在 include_path 中检索文件的话,可以将该参数设为 1 或 TRUE。
context 可选。规定文件句柄的环境。Context 是可以修改流的行为的一套选项。

mode 参数的可能的值

mode 说明
"r" 只读方式打开,将文件指针指向文件头。
"r+" 读写方式打开,将文件指针指向文件头。
"w" 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
"w+" 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
"a" 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
"a+" 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
"x" 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。 这和给底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。 此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件。
"x+" 创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。 这和给底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。 此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件
PHP 相关文章推荐
PHP strncasecmp字符串比较的小技巧
Jan 04 PHP
第六章 php目录与文件操作
Dec 30 PHP
php中http_build_query 的一个问题
Mar 25 PHP
php中函数前加&amp;符号的作用分解
Jul 08 PHP
php实现读取超大文件的方法
Jul 28 PHP
使用YUI+Ant 实现JS CSS压缩
Sep 02 PHP
php异步多线程swoole用法实例
Nov 14 PHP
PHP数据库操作二:memcache用法分析
Aug 16 PHP
thinkphp中U方法按路由规则生成url的方法
Mar 12 PHP
Smarty模板类内部原理实例分析
Jul 03 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
Nov 21 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
Feb 22 PHP
Php无限级栏目分类读取的实现代码
Feb 19 #PHP
Php中使用Select 查询语句的实例
Feb 19 #PHP
php简单的留言板与回复功能具体实现
Feb 19 #PHP
phpphp图片采集后按原路径保存图片示例
Feb 18 #PHP
php检测iis环境是否支持htaccess的方法
Feb 18 #PHP
php中AES加密解密的例子小结
Feb 18 #PHP
jQuery中的RadioButton,input,CheckBox取值赋值实现代码
Feb 18 #PHP
You might like
php 中文字符入库或显示乱码问题的解决方法
2010/04/12 PHP
PHP字符串和十六进制如何实现互相转换
2020/07/16 PHP
文本链接逐个出现的js脚本
2007/12/12 Javascript
用apply让javascript函数仅执行一次的代码
2010/06/27 Javascript
在多个页面使用同一个HTML片段的代码
2011/03/04 Javascript
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
jquery实现具有收缩功能的垂直导航菜单
2016/02/16 Javascript
js调用父框架函数与弹窗调用父页面函数的简单方法
2016/11/01 Javascript
NodeJS中的MongoDB快速入门详细教程
2016/11/11 NodeJs
教你用十行node.js代码读取docx的文本
2017/03/08 Javascript
JavaScript防止全局变量污染的方法总结
2018/08/02 Javascript
小程序实现上下切换位置
2020/11/16 Javascript
Python 爬虫模拟登陆知乎
2016/09/23 Python
基于Python的接口测试框架实例
2016/11/04 Python
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
Python实现一个服务器监听多个客户端请求
2018/04/12 Python
利用python库在局域网内传输文件的方法
2018/06/04 Python
用于业余项目的8个优秀Python库
2018/09/21 Python
python实现websocket的客户端压力测试
2019/06/25 Python
python 进程间数据共享multiProcess.Manger实现解析
2019/09/23 Python
浅谈Python 参数与变量
2020/06/20 Python
python 删除系统中的文件(按时间,大小,扩展名)
2020/11/19 Python
公司营业员的工作总结自我评价
2013/10/05 职场文书
心得体会怎么写
2013/12/30 职场文书
幼教简历自我评价
2014/01/28 职场文书
行政管理毕业生自荐信
2014/02/24 职场文书
社区母亲节活动方案
2014/03/05 职场文书
先进员工获奖感言
2014/08/14 职场文书
大学军训自我鉴定大全
2014/09/18 职场文书
出纳岗位职责范本
2015/03/31 职场文书
婚姻出轨保证书
2015/05/08 职场文书
2019年“红色之旅”心得体会1000字(3篇)
2019/09/27 职场文书
python调用ffmpeg命令行工具便捷操作视频示例实现过程
2021/11/01 Python
OpenCV实现反阈值二值化
2021/11/17 Java/Android
Ruby序列化和持久化存储 Marshal和Pstore介绍
2022/04/18 Ruby
html中两种获取标签内的值的方法
2022/06/10 HTML / CSS