php读取本地文件常用函数(fopen与file_get_contents)


Posted in PHP onSeptember 09, 2013

下面我们以.txt文件为实例来介绍php读取本地文件的函数,读取文件我们可以利用fopen或file_get_contents来读取,file_get_contents更简单而fopen需要fread配合才可以显示读出的内容。

1.首先来介绍一下fopen()函数

下面我们给出了一个直接打开本地文件的代码demo,必要的地方我们都已经加上了注释:

    //直接打开一个本地文件的实例代码   
    <?php   
    //假若我们本地的文件是一个名为xmlas.txt的文本   
    $filedemo = "xmlas.txt";   
    $fpdemo = fopen($filedemo,"r");   
    if ($fpdemo){   
     while(!feof($fpdemo)){   
      //1000读取的字符数   
      $datademo = fread($fpdemo, 1000);   
     }   
     fclose($fpdemo);   
    }   
    echo $datademo;   
    ?>

2.使用file_get_contents() 函数将整个文件在一个字符串中输出:

假若我们的xmlas.txt文本文件中有这样一句话:现在的电影越来越没激情,想要全部高潮请看日本爱情

动作片!
那么我们file_get_contents() 函数的实例代码便如下:

    <?php   
    echo file_get_contents("xmlas.txt");   
    //此时输出的内容便为xmlas.txt中的内容:   
    //现在的电影越来越没激情,想要全部高潮请看日本爱情动作片!   
    ?>

3.如何读取本地的一个文件夹而不是一个单独文件:
请看下面的实例代码,在实例中我们将读取一个名为xmlas的文件夹:

<?php   
    $dirdemo = opendir('/xmlas');   
    while(($filedemo = readdir($dirdemo))!=false){   
      if ($filedemo!="." && $filedemo!="..") {    
        $nsdemo = explode('.', $filedemo);   
        echo $nsdemo[0];   
      }    
    }   
    closedir($dirdemo);   
    ?> 

4.我们还可以利用fopen来写文件

/**
 *用fopen写入文件
 *@param string $filename
 *@param string $contents
 *@return boolean
 */ function wirte($filename,&$contents)
 {
  $fp=fopen($filename,"wb");
  if($fp)
  {
   flock($fp,LOCK_EX);//同一时间锁定文件,只能一个人操作
   fwrite($fp,$contents);
   flock($fp,LOCK_UN);//保存数据握进行解锁文件并保存
   fclose($fp);
   return true;
  }else
  {
   return false;
  }
 }

这样我只要利用fopen配合fwrite就可以实现文件读写了。

注意:l打开文件

在打开文件文件之前,我们需要知道这个文件的路径,以及此文件是否存在。

用$_SERVER[“DOCUMENT_ROOT”]内置全局变量,来获得站点的相对路径。如下:

$root = $_SERVER[“DOCUMENT_ROOT”];

在用函数file_exists()来检测文件是否存在。如下:

If(!file_exists("$root/order.txt")){echo ‘文件不存在';}

这样可能更合理更实用哦。

PHP 相关文章推荐
落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码
Dec 16 PHP
对text数据类型不支持代码页转换 从: 1252 到: 936
Apr 23 PHP
基于PHP文件操作的详细诠释
Jun 21 PHP
thinkphp验证码显示不出来的解决方法
Mar 29 PHP
php中opendir函数用法实例
Nov 15 PHP
使用php的HTTP请求的库Requests实现美女图片墙
Feb 22 PHP
php目录拷贝实现方法
Jul 10 PHP
PHP基于文件存储实现缓存的方法
Jul 20 PHP
PHP实现伪静态方法汇总
Jan 13 PHP
PHP文件缓存smarty模板应用实例分析
Feb 26 PHP
php自定义时间转换函数示例
Dec 07 PHP
laravel5.6框架操作数据curd写法(查询构建器)实例分析
Jan 26 PHP
PHP函数之日期时间函数date()使用详解
Sep 09 #PHP
PHP json_encode中文乱码问题的解决办法
Sep 09 #PHP
分享PHP header函数使用教程
Sep 05 #PHP
php增删改查示例自己写的demo
Sep 04 #PHP
php使用异或实现的加密解密实例
Sep 04 #PHP
PHP中数组定义的几种方法
Sep 01 #PHP
对淘宝URL中ID提取的PHP代码
Sep 01 #PHP
You might like
PHP伪静态写法附代码
2008/06/20 PHP
给ECShop添加最新评论
2015/01/07 PHP
Laravel使用模型实现like模糊查询的例子
2019/10/24 PHP
JS backgroundImage控制
2009/05/19 Javascript
用JS控制回车事件的代码
2011/02/20 Javascript
js如何实现设计模式中的模板方法
2013/07/23 Javascript
PHP+MySQL+jQuery随意拖动层并即时保存拖动位置实例讲解
2015/10/09 Javascript
使用Object.defineProperty实现简单的js双向绑定
2016/04/15 Javascript
JS对象深度克隆实例分析
2017/03/16 Javascript
微信小程序 setData使用方法及常用错误解决办法
2017/05/11 Javascript
js Date()日期函数浏览器兼容问题解决方法
2017/09/12 Javascript
vue-router路由与页面间导航实例解析
2017/11/07 Javascript
深入浅析vue组件间事件传递
2017/12/29 Javascript
前端开发基础javaScript的六大作用
2020/08/06 Javascript
Vue表单提交点击事件只允许点击一次的实例
2020/10/23 Javascript
[20:57]Ti4主赛事第三天开幕式
2014/07/21 DOTA
Python中无限元素列表的实现方法
2014/08/18 Python
python关键字and和or用法实例
2015/05/28 Python
Python yield 使用方法浅析
2017/05/20 Python
python实现微信发送邮件关闭电脑功能
2018/02/22 Python
python中property属性的介绍及其应用详解
2019/08/29 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
Python操作qml对象过程详解
2019/09/26 Python
Python如何基于rsa模块实现非对称加密与解密
2020/01/03 Python
html5如何在Canvas中实现自定义路径动画示例
2017/09/18 HTML / CSS
荷兰街头时尚之家:Funkie House
2019/03/18 全球购物
Hobbs官方网站:英国奢华女性时尚服装
2020/02/22 全球购物
英国第一职业高尔夫商店:Clickgolf.co.uk
2020/11/18 全球购物
优秀党支部事迹材料
2014/01/14 职场文书
经典导游欢迎词大全
2014/01/16 职场文书
酒店总经理助理职责
2014/02/12 职场文书
2014医学院领导干部四风对照检查材料思想汇报
2014/09/16 职场文书
公务员个人年终总结
2015/02/12 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
pytorch 实现在测试的时候启用dropout
2021/05/27 Python
python实现股票历史数据可视化分析案例
2021/06/10 Python