PHP读取文件并可支持远程文件的代码分享


Posted in PHP onOctober 03, 2012

php读取文件

案例一

<?php 
$file = '3water.com.php'; 
//本案例不支持远程 
$fso = fopen($file, 'r'); 
echo $data = fread($fso, filesize($file)); 
fclose($fso); 
?>

fopen() 将 file 指定的名字资源绑定到一个流上.
filesize 返回文件大小的字节数,如果出错返回 FALSE.
注: 因为 PHP 的整数类型是有符号的,并且大多数平台使用 32 位整数,filesize() 函数在碰到大于 2GB 的文件时可能会返回非预期的结果.对于 2GB 到 4GB 之间的文件通常可以使用 sprintf("%u", filesize($file)) 来克服此问题.
fread() 从文件指针 handle 读取最多 length 个字节. 该函数在读取完 length 个字节数,或到达 EOF 的时候,或(对于网络流)当一个包可用时就会停止读取文件,视乎先碰到哪种情况.
说明:低版本用法!建议php5用file_get_contents

案例二

<?php 
$file = '3water.com.php'; 
//支持远程 
$file = 'https://3water.com';// 
echo $data = implode('', file($file)); 
?>

file -- 把整个文件读入一个数组中
说明
读取二进制的文件

案例三

<?php 
$file = 'https://3water.com'; 
echo file_get_contents($file); 
?>

file_get_contents -- 将整个文件读入一个字符串
说明
string file_get_contents ( string filename [, int use_include_path [, resource context]])
和 file() 一样,只除了 file_get_contents() 将文件返回为一个字符串.
file_get_contents() 函数是用来将文件的内容读入到一个字符串中的首选方法.如果操作系统支持还会使用内存映射技术来增强性能.
PHP 相关文章推荐
PHP.MVC的模板标签系统(四)
Sep 05 PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
Dec 29 PHP
PHP 中检查或过滤IP地址的实现代码
Nov 27 PHP
PHP正确解析UTF-8字符串技巧应用
Nov 07 PHP
str_replace只替换一次字符串的方法
Apr 09 PHP
PHP 通过Socket收发十六进制数据的实现代码
Aug 16 PHP
解密ThinkPHP3.1.2版本之独立分组功能应用
Jun 19 PHP
php使用数组填充下拉列表框的方法
Mar 31 PHP
PHP框架laravel的.env文件配置教程
Jun 07 PHP
php常用字符串长度函数strlen()与mb_strlen()用法实例分析
Jun 25 PHP
php中错误处理操作实例分析
Aug 23 PHP
解决Laravel自定义类引入和命名空间的问题
Oct 15 PHP
PHP判断文件是否存在、是否可读、目录是否存在的代码
Oct 03 #PHP
PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
Oct 03 #PHP
PHP HTML JavaScript MySQL代码如何互相传值的方法分享
Sep 30 #PHP
ThinkPHP3.0略缩图不能保存到子目录的解决方法
Sep 30 #PHP
用PHP实现 上一篇、下一篇的代码
Sep 29 #PHP
php中长文章分页显示实现代码
Sep 29 #PHP
PHP实现下载功能的代码
Sep 29 #PHP
You might like
YB217、YB235、YB400浅听
2021/03/02 无线电
php数组去重复数据示例
2014/02/25 PHP
php绘图之加载外部图片的方法
2015/01/24 PHP
php多次include后导致全局变量global失效的解决方法
2015/02/28 PHP
thinkphp框架下实现登录、注册、找回密码功能
2016/04/06 PHP
jQuery 选择器项目实例分析及实现代码
2012/12/28 Javascript
自编jQuery插件实现模拟alert和confirm
2014/09/01 Javascript
JavaScript中的console.profile()函数详细介绍
2014/12/29 Javascript
JSON与XML优缺点对比分析
2015/07/17 Javascript
JavaScript实现跑马灯抽奖活动实例代码解析与优化(一)
2016/02/16 Javascript
深入理解JS函数的参数(arguments)的使用
2016/05/28 Javascript
JavaScript蒙板(model)功能的简单实现代码
2016/08/04 Javascript
JavaScript仿聊天室聊天记录
2016/12/27 Javascript
JavaScript的事件机制详解
2017/01/17 Javascript
bootstrap Validator 模态框、jsp、表单验证 Ajax提交功能
2017/02/17 Javascript
jQuery实现通过方向键控制div块上下左右移动的方法【测试可用】
2018/04/26 jQuery
微信小程序自定义组件之可清除的input组件
2018/07/17 Javascript
Vue使用Proxy监听所有接口状态的方法实现
2019/06/07 Javascript
Vue 前端实现登陆拦截及axios 拦截器的使用
2019/07/17 Javascript
基于Express框架使用POST传递Form数据
2019/08/10 Javascript
vuex分模块后,实现获取state的值
2020/07/26 Javascript
vue flex 布局实现div均分自动换行的示例代码
2020/08/05 Javascript
[28:42]Ti4正赛VG vs NEWBEE1
2014/07/19 DOTA
解决python nohup linux 后台运行输出的问题
2018/05/11 Python
​如何愉快地迁移到 Python 3
2019/04/28 Python
python 实现二维字典的键值合并等函数
2019/12/06 Python
python 通过视频url获取视频的宽高方式
2019/12/10 Python
python实现人机猜拳小游戏
2020/02/03 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
任意存:BOXFUL
2018/05/21 全球购物
女子锻炼服装和瑜伽服装:Splits59
2019/03/04 全球购物
马德里竞技官方网上商店:Atletico Madrid Shop
2019/03/31 全球购物
公司面试感谢信
2014/02/01 职场文书
捐助倡议书
2015/01/19 职场文书
工会经费申请报告
2015/05/15 职场文书
追讨欠款律师函
2015/05/27 职场文书