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数组 为文章加关键字连接 文章内容自动加链接
Dec 29 PHP
基于session_unset与session_destroy的区别详解
Jun 03 PHP
php读取目录及子目录下所有文件名的方法
Oct 20 PHP
PHP实现事件机制实例分析
Jun 26 PHP
Zend Framework创建自己的动作助手详解
Mar 05 PHP
php blowfish加密解密算法
Jul 02 PHP
详解Yii2 rules 的验证规则
Dec 02 PHP
php使用crypt()函数进行加密
Jun 08 PHP
php记录搜索引擎爬行记录的实现代码
Mar 02 PHP
Laravel框架自定义公共函数的引入操作示例
Apr 16 PHP
Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
Oct 11 PHP
Laravel 实现Controller向blade前台模板赋值的四种方式小结
Oct 22 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屏蔽过滤指定关键字的方法
2014/11/03 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
Smarty模板常见的简单应用分析
2016/11/15 PHP
PHP中字符串长度的截取用法示例
2017/01/12 PHP
PHP实现的下载远程文件类定义与用法示例
2017/07/05 PHP
PHP copy函数使用案例代码解析
2020/09/01 PHP
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
javascript关于继承的用法汇总
2014/12/20 Javascript
javascript常用的方法分享
2015/07/01 Javascript
浅析jquery数组删除指定元素的方法:grep()
2016/05/19 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
2016/10/10 Javascript
JS作用域链详解
2017/06/26 Javascript
js中json对象和字符串的理解及相互转化操作实现方法
2017/09/22 Javascript
nodejs中安装ghost出错的原因及解决方法
2017/10/23 NodeJs
Vue仿今日头条实例详解
2018/02/06 Javascript
JavaScript实现一个简易的计算器实例代码
2018/05/10 Javascript
JavaScript+H5实现微信摇一摇功能
2018/05/23 Javascript
nodejs高大上的部署方式(PM2)
2018/09/11 NodeJs
jquery实现手风琴案例
2020/05/04 jQuery
JavaScript进阶(二)词法作用域与作用域链实例分析
2020/05/09 Javascript
[47:10]完美世界DOTA2联赛PWL S3 LBZS vs Rebirth 第二场 12.16
2020/12/18 DOTA
给Python的Django框架下搭建的BLOG添加RSS功能的教程
2015/04/08 Python
Python中处理字符串的相关的len()方法的使用简介
2015/05/19 Python
详解python中requirements.txt的一切
2017/03/03 Python
你眼中的Python大牛 应该都有这份书单
2017/10/31 Python
python 利用for循环 保存多个图像或者文件的实例
2018/11/09 Python
Python 实现训练集、测试集随机划分
2020/01/08 Python
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
详解html5页面 rem 布局适配方法
2018/01/12 HTML / CSS
Vince官网:全球著名设计师品牌,休闲而优雅的服饰
2017/01/15 全球购物
世界上最好的野生海鲜和有机食品:Vital Choice
2020/01/16 全球购物
高级工程师英文求职信
2014/03/19 职场文书
逃课检讨书
2015/01/26 职场文书
保险公司增员口号
2015/12/25 职场文书
2019学校请假条格式及范文
2019/06/25 职场文书
Python实现滑雪小游戏
2021/09/25 Python