PHP使用fopen与file_get_contents读取文件实例分享


Posted in PHP onMarch 04, 2016

php中读取文件可以使用fopen和file_get_contents这两个函数,二者之间没有本质区别,只是前者读取文件的php代码相比后者要复杂一点。本文章通过实例向大家讲解fopen和file_get_contents读取文件的实现代码。需要的码农可以参考一下。

fopen读取文件的代码如下:

<?php
$file_name = "1.txt";
echo $file_name . "
";
$fp = fopen($file_name, 'r');
//$buffer=fgets($fp);
while (!feof($fp)) {
$buffer = fgets($fp);
echo $buffer;
}
fclose($fp);
?>

注意fopen读取文件需要配合使用fgets和fclose函数。

file_get_contents读取文件的代码如下:

<?php
if (file_exists($path)) {
$body = file_get_contents($path);
echo $body; //输入文件内容
} else {
echo "文件不存在 $path";
}
?>

这个函数是一次性读取所有文件内容并显示出来,但是如果文件超大会导致php占很大的内存了。

当然还有像file这种一般是把文件读成数组了,同时也可以实现读取文件了

下面给大家介绍下fopen()和file_get_contents()打开URL获得网页内容的用法区别

在php里,要想打开网页URL获得网页内容,比较常用的函数是fopen()和file_get_contents()。如果要求不苛刻,此两个函数多数情况下是可以根据个人爱好任意选择的,本文谈下此两函数的用法有什么区别,以及使用时需要注意的问题。

fopen()打开URL

下面是一个使用fopen()打开URL的例子:

<?php
$fh = fopen('http://www.baidu.com/', 'r');
if($fh){
while(!feof($fh)) {
echo fgets($fh);
}
}
?>

从此例子可以看到,fopen()打开网页后,返回的$fh不是字符串,不能直输出的,还需要用到fgets()这个函数来获取字符串。fgets()函数是从文件指针中读取一行。文件指针必须是有效的,必须指向由 fopen() 或 fsockopen() 成功打开的文件(并还未由 fclose() 关闭)。

可知,fopen()返回的只是一个资源,如果打开失败,本函数返回 FALSE 。

file_get_contents()打开URL

下面是一个使用file_get_contents()打开URL的例子:

<?php
$fh= file_get_contents('http://www.baidu.com/');
echo $fh;
?>

从此例子看到,file_get_contents()打开网页后,返回的$fh是一个字符串,可以直接输出的。

通过上面两个例子的对比,可以看出使用file_get_contents()打开URL,也许是更多人的选择,因为其比fopen()更简单便捷。

不过,如果是读取比较大的资源,则是用fopen()比较合适。

PHP 相关文章推荐
php pack与unpack 摸板字符字符含义
Oct 29 PHP
php读取mysql的简单实例
Jan 15 PHP
采用memcache在web集群中实现session的同步会话
Jul 05 PHP
PHP循环遍历数组的3种方法list()、each()和while总结
Nov 19 PHP
Thinkphp单字母函数使用指南
May 08 PHP
详解PHP实现定时任务的五种方法
Jul 25 PHP
PHP会员找回密码功能的简单实现
Sep 05 PHP
Yii框架中sphinx索引配置方法解析
Oct 18 PHP
深入讲解PHP的对象注入(Object Injection)
Mar 01 PHP
PHP内置函数生成随机数实例
Jan 18 PHP
php生成word并下载代码实例
Mar 15 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
Feb 15 PHP
PHP截取IE浏览器并缩小原图的方法
Mar 04 #PHP
zend framework中使用memcache的方法
Mar 04 #PHP
PHP结合Mysql数据库实现留言板功能
Mar 04 #PHP
实现PHP框架系列文章(6)mysql数据库方法
Mar 04 #PHP
Codeigniter中集成smarty和adodb的方法
Mar 04 #PHP
PHP常用技巧汇总
Mar 04 #PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
Mar 03 #PHP
You might like
在PHP中使用灵巧的体系结构
2006/10/09 PHP
php生成EXCEL的东东
2006/10/09 PHP
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
2013/06/14 PHP
CodeIgniter基本配置详细介绍
2013/11/12 PHP
PHP模板引擎Smarty内建函数foreach,foreachelse用法分析
2016/04/11 PHP
Joomla数据库操作之JFactory::getDBO用法
2016/05/05 PHP
php传值方式和ajax的验证功能
2017/03/27 PHP
PHP array_shift()用法实例分析
2019/01/07 PHP
安装docker和docker-compose实例详解
2019/07/30 PHP
jQuery插件实现屏蔽单个元素使用户无法点击
2013/04/12 Javascript
简单谈谈Vue 模板各类数据绑定
2016/09/25 Javascript
jQuery Validate 校验多个相同name的方法
2017/05/18 jQuery
js+html5实现半透明遮罩层弹框效果
2020/08/24 Javascript
vuejs 单文件组件.vue 文件的使用
2017/07/28 Javascript
JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发基础小结
2017/08/10 Javascript
jQuery实现遍历XML节点和属性的方法示例
2018/04/29 jQuery
微信小程序select下拉框实现效果
2019/05/15 Javascript
利用Electron简单撸一个Markdown编辑器的方法
2019/06/10 Javascript
详解用js代码触发dom事件的实现方案
2020/06/10 Javascript
vue组件添加事件@click.native操作
2020/10/30 Javascript
React中使用Vditor自定义图片详解
2020/12/25 Javascript
python实现分析apache和nginx日志文件并输出访客ip列表的方法
2015/04/04 Python
浅析Python多线程下的变量问题
2015/04/28 Python
Python实现比较两个文件夹中代码变化的方法
2015/07/10 Python
基于python实现KNN分类算法
2020/04/23 Python
Pytorch 搭建分类回归神经网络并用GPU进行加速的例子
2020/01/09 Python
Python+OpenCV图像处理——实现轮廓发现
2020/10/23 Python
美国相机和电子产品零售商:Beach Camera
2020/11/26 全球购物
zooplus德国:便宜地订购动物用品、动物饲料、动物食品
2020/05/06 全球购物
出售房屋协议书范本
2014/10/06 职场文书
公安民警正风肃纪剖析材料
2014/10/10 职场文书
煤矿百日安全活动总结
2015/05/07 职场文书
周恩来的四个昼夜观后感
2015/06/03 职场文书
关于元旦的广播稿2016
2015/12/17 职场文书
关于职业道德的心得体会
2016/01/18 职场文书
Python基础之元编程知识总结
2021/05/23 Python