热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php读取本地文件常用函数

下面我们以.txt文件为实例来介绍php读取本地文件的函数,读取文件我们可以利用fopen或file_get_contents来读取,file_get_contents更简单而fopen需要fread配合才可以显示读出的内容.1.首先来介绍一下...
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
当前位置:首页 > PHP教程 > php函数 > 列表
php读取本地文件常用函数
发布: 来源:  添加日期:2014-09-13 14:01:08 浏览: 评论:0 

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

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

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

直接打开一个本地文件的实例代码:

  1.     //假若我们本地的文件是一个名为xmlas.txt的文本    
  2.     $filedemo = "xmlas.txt";    
  3.     $fpdemo = fopen($filedemo,"r");    
  4.     if ($fpdemo){    
  5.      while(!feof($fpdemo)){    
  6.       //1000读取的字符数    
  7.       $datademo = fread($fpdemo, 1000);    
  8.      }    
  9.      fclose($fpdemo);    
  10.     }    
  11.     echo $datademo;    
  12. ?> 

2.使用file_get_contents() 函数将整个文件在一个字符串中输出,假若我们的xmlas.txt文本文件中有这样一句话:现在的电影越来越没激情,想要全部高潮请看日本爱情动作片,那么我们file_get_contents() 函数的实例代码便如下:

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

3.如何读取本地的一个文件夹而不是一个单独文件:

请看下面的实例代码,在实例中我们将读取一个名为xmlas的文件夹,代码如下:

  1. $dirdemo = opendir('/xmlas');    
  2. while(($filedemo = readdir($dirdemo))!=false){    
  3.   if ($filedemo!="." && $filedemo!="..") {     
  4.     $nsdemo = explode('.'$filedemo);    
  5.     echo $nsdemo[0];    
  6.   }     
  7. }    
  8. closedir($dirdemo);    
  9. ?> 

4.我们还可以利用fopen来写文件,代码如下:

  1. /** 
  2.  *用fopen写入文件 
  3.  *@param string $filename 
  4.  *@param string $contents 
  5.  *@return boolean 
  6.  */ 
  7.  
  8.  function wirte($filename,&$contents
  9.  { 
  10.   $fp=fopen($filename,"wb"); 
  11.   if($fp
  12.   { 
  13.    flock($fp,LOCK_EX);//同一时间锁定文件,只能一个人操作 
  14.    fwrite($fp,$contents); 
  15.    flock($fp,LOCK_UN);//保存数据握进行解锁文件并保存 
  16.    fclose($fp);//开源代码phpfensi.com 
  17.    return true; 
  18.   }else 
  19.   { 
  20.    return false; 
  21.   } 
  22.  } 

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

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

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

$root = $_SERVER[“DOCUMENT_ROOT”];

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

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

这样可能更合理更实用.


推荐阅读
  • Python 实战:异步爬虫(协程技术)与分布式爬虫(多进程应用)深入解析
    本文将深入探讨 Python 异步爬虫和分布式爬虫的技术细节,重点介绍协程技术和多进程应用在爬虫开发中的实际应用。通过对比多进程和协程的工作原理,帮助读者理解两者在性能和资源利用上的差异,从而在实际项目中做出更合适的选择。文章还将结合具体案例,展示如何高效地实现异步和分布式爬虫,以提升数据抓取的效率和稳定性。 ... [详细]
  • 利用树莓派畅享落网电台音乐体验
    最近重新拾起了闲置已久的树莓派,这台小巧的开发板已经沉寂了半年多。上个月闲暇时间较多,我决定将其重新启用。恰逢落网电台进行了改版,回忆起之前在树莓派论坛上看到有人用它来播放豆瓣音乐,便萌生了同样的想法。通过一番调试,终于实现了在树莓派上流畅播放落网电台音乐的功能,带来了全新的音乐享受体验。 ... [详细]
  • 在处理遗留数据库的映射时,反向工程是一个重要的初始步骤。由于实体模式已经在数据库系统中存在,Hibernate 提供了自动化工具来简化这一过程,帮助开发人员快速生成持久化类和映射文件。通过反向工程,可以显著提高开发效率并减少手动配置的错误。此外,该工具还支持对现有数据库结构进行分析,自动生成符合 Hibernate 规范的配置文件,从而加速项目的启动和开发周期。 ... [详细]
  • PHP开发人员薪资水平分析:工程师平均工资概况
    PHP开发人员薪资水平分析:工程师平均工资概况 ... [详细]
  • 【Linux进阶指南】第一阶段第三课:体验与部署Ubuntu系统
    在正式踏上Linux学习之旅之前,本课程将引导你深入体验和部署Ubuntu系统。通过详细的操作步骤和实践演练,你将掌握Ubuntu的基本安装、配置及常用命令,为后续的进阶学习打下坚实的基础。此外,课程还将介绍如何解决常见问题和优化系统性能,帮助你更加高效地使用Ubuntu。 ... [详细]
  • 掌握Android UI设计:利用ZoomControls实现图片缩放功能
    本文介绍了如何在Android应用中通过使用ZoomControls组件来实现图片的缩放功能。ZoomControls提供了一种简单且直观的方式,让用户可以通过点击放大和缩小按钮来调整图片的显示大小。文章详细讲解了ZoomControls的基本用法、布局设置以及与ImageView的结合使用方法,适合初学者快速掌握Android UI设计中的这一重要功能。 ... [详细]
  • 2016-2017学年《网络安全实战》第三次作业
    2016-2017学年《网络安全实战》第三次作业总结了教材中关于网络信息收集技术的内容。本章主要探讨了网络踩点、网络扫描和网络查点三个关键步骤。其中,网络踩点旨在通过公开渠道收集目标信息,为后续的安全测试奠定基础,而不涉及实际的入侵行为。 ... [详细]
  • 《我的世界》Java版与Windows 10版(基岩版)有何不同?
    《我的世界》Java版与Windows 10版(基岩版)有何不同? ... [详细]
  • 源代码是构建网站的基础,涵盖了网站程序的所有代码、文件和目录结构。掌握源代码意味着完全控制网站的所有权。在传统自助建站平台中,由于采用SAAS模式,源代码通常不对外开放,用户实际上每年支付的费用仅是为了使用这些平台提供的服务,而无法获得真正的代码所有权。相比之下,米拓源代码提供了全面的技术细节和实现方法,使开发者能够深入了解并自主定制网站功能,确保了更高的灵活性和安全性。 ... [详细]
  • 二叉树的直径是指树中任意两个叶节点之间最长路径上的节点数量。本文深入解析了计算二叉树直径的算法,并提出了一种优化方法,以提高计算效率和准确性。通过详细的案例分析和性能对比,展示了该优化算法在实际应用中的优势。 ... [详细]
  • 本文作为探讨PHP依赖注入容器系列文章的开篇,将首先通过具体示例详细阐述依赖注入的基本概念及其重要性,为后续深入解析容器的实现奠定基础。 ... [详细]
  • 深入理解Linux网络编程:UDP协议实战解析
    深入理解Linux网络编程:UDP协议实战解析 ... [详细]
  • 在尝试为 Unity 编译一个简单的 Java 库时,运行 `ant jar` 命令后遇到了 Java I/O 异常。具体错误信息为“无法启动程序 ${aAPT},错误代码 2”,这通常表示指定的文件或目录不存在。此问题可能是由于环境配置不正确或路径设置有误导致的。建议检查相关路径和环境变量,确保所有依赖项都已正确安装和配置。 ... [详细]
  • 本文探讨了利用Java实现WebSocket实时消息推送技术的方法。与传统的轮询、长连接或短连接等方案相比,WebSocket提供了一种更为高效和低延迟的双向通信机制。通过建立持久连接,服务器能够主动向客户端推送数据,从而实现真正的实时消息传递。此外,本文还介绍了WebSocket在实际应用中的优势和应用场景,并提供了详细的实现步骤和技术细节。 ... [详细]
  • 开发日志:在插入数据到一张表的同时更新另一张表的技术细节与最佳实践 ... [详细]
author-avatar
mobiledu2502872577
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有