【PHP】文件写入和读取详解
<?php$fp = fopen("C:\wamp64\www\text.txt",'w'); ?>
<?php$fp = fopen("C:/wamp64/www/text.txt",'w'); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'w'); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'w');fwrite($fp,'在写模式下写入');fclose($fp); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');fwrite($fp,'在读模式下写入');fclose($fp); ?>
很全面,但我觉得这张表对新手有些不太友好,让人看后不知多云。 r是只读,w是只写(原来有的内容全删除),a是追加(不删除原有内容),这都好理解。
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'r+');fwrite($fp,'r+ mode');fclose($fp); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'a+');fwrite($fp,'a+ mode');fclose($fp); ?>
•采用w+模式写入文本“w+ mode”
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'w+');fwrite($fp,'w+ mode');fclose($fp); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');//打开文件if(file_exists("$DOCUMENT_ROOT/text.txt")){//当文件存在时,才读取内容while(!feof($fp)){//判断文件指针是否到达末尾$c = fgetc($fp);//每执行一次fgetc(),文件指针就向后移动一位echo $c;//输出获取到的字节 }}fclose($fp);//关闭文件 ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');echo fgetc($fp);//只做一次输出close($fp); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');echo fgetc($fp);//连续做三次输出echo fgetc($fp);echo fgetc($fp);fclose($fp); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');echo fread($fp, 3);//一次输出三个字节即一个汉字字符(UTF-8)fclose($fp); ?>
改成:
echo fread($fp, 6);
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT']$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');//打开文件if(file_exists("$DOCUMENT_ROOT/text.txt")){//当文件存在时,才读取内容while(!feof($fp)){//判断文件指针是否到达末尾$line = fgets($fp);//返回一行文本,并将文件指针移动到下一行头部echo $line."<br/>";//输出获取到的一行文本 }}fclose($fp);//关闭文件 ?>
$line = fgets($fp,10);
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');fpassthru($fp);fclose($fp); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$file_array = file("$DOCUMENT_ROOT/text.txt");//取到文件数组foreach ($file_array as $value) {//输出数组元素echo $value."<br/>";} ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];function print_file_pointer($fp){//定义一个打印文件指针位置的函数echo " <br/>//此时文件指针的位置:";echo ftell($fp)."<br/>";}$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');echo fgetc($fp);//通过fgetc连续输出三个字节echo fgetc($fp);echo fgetc($fp);print_file_pointer($fp);//打印此刻文件指针的位置echo fread($fp,6);//通过fread一次输出6字节print_file_pointer($fp);//打印此刻文件指针的位置echo fgets($fp); //通过fgets输出一整行print_file_pointer($fp);//打印此刻文件指针的位置fpassthru($fp); //一次性输出全部内容print_file_pointer($fp);//打印此刻文件指针的位置fseek($fp, 33);//使文件指针移动到33字节位置print_file_pointer($fp);//打印此刻文件指针的位置rewind($fp);//使文件指针移动到0字节位置(初始位置)print_file_pointer($fp);//打印此刻文件指针的位置 $fclose($fp); ?>
<?php$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];$fp = fopen("$DOCUMENT_ROOT/text.txt",'r');while(!feof($fp)){echo fgets($fp);echo ftell($fp);}fclose($fp); ?>
转载于:https://www.cnblogs.com/penghuwan/p/6884932.html
【PHP】文件写入和读取详解相关推荐
- python读取遥感 dat_基于python批量处理dat文件及科学计算方法详解
摘要:主要介绍一些python的文件读取功能,文件内容修改,文件名后缀更改等操作. 批处理文件功能 import os path1 = 'C:\\Users\\awake_ljw\\Documents ...
- hadoop文件存储位置_Hadoop文件的存储格式实例详解
sequence文件存储格式 1.txt 纯文本格式,若干行记录.默认用字符编码存储 2.SequenceFile格式(顺序文件格式,可进行切割) key-value 格式进行存储,最终形成的是一个二 ...
- 【转载】Linux命令-自动挂载文件/etc/fstab功能详解[转]
博客园 首页 新随笔 联系 订阅 管理 随笔 - 322 文章 - 0 评论 - 19 Linux命令-自动挂载文件/etc/fstab功能详解[转] 一./etc/fstab文件的作用 ...
- python打开文件的语法_python27语法Python文件打开方式实例详解【a、a+、r+、w+区别】...
本文实例讲述了Python文件打开方式.分享给大家供大家参考,具体如下: 第一步 排除文件打开方式错误: r只读,r+读写,不创建 w新建只写,w+新建读写,二者都会将文件内容清零 (以w方式打开,不 ...
- c语言 freopen txt_C语言文件操作函数freopen详解
C语言文件操作函数freopen详解 今天做USACO 用到了文件的操作. 之前做USACO只是格式化的.些 写 freopen("xxx.in","r",st ...
- java formfile_基于Struts文件上传(FormFile)详解
Struts中FormFile用于文件进行上传 1.在jsp文件中进行定义 名字: 头像: 2.在Form表单中定义FormFile /* * Generated by MyEclipse Strut ...
- java spring bean配置文件_Spring基于xml文件配置Bean过程详解
这篇文章主要介绍了spring基于xml文件配置Bean过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 通过全类名来配置: class:be ...
- linux系统电脑的权限设置,Linux下的文件权限设置修改详解linux操作系统 -电脑资料...
在linux中更改所属用户组是使用chgrp,更改文件拥有者, chown,更改9个属性, chmod这三种常用的问题,在linxu中这三个命令就是对文件目录权限的控制命令了,下面我来介绍它们的用法与 ...
- Nero刻录ISO文件的过程步骤详解
常见的镜像文件格式有ISO.BIN.IMG.TAO.DAO.CIF.FCD. Nero刻录ISO文件的过程步骤详解(附Nero下载地址无需注册) 刻录ISO文件的软件其实很多--以Nero(德国公司出 ...
最新文章
- openstack组件之nova
- python中if not是什么意思,python if not不同应用有什么区别,pythonifnot区别,python 中 "if...
- BZOJ 3456 城市规划 (组合计数、DP、FFT)
- 小程序支付 PHP
- Android 高级Drawable资源---复合Drawable----级别列表Drawabled
- leetcode 240. Search a 2D Matrix II | 240. 搜索二维矩阵 II(Java)
- mysql-5.5.31主从复制
- GIS专业核心课程电子教材配套实验数据汇总(持续更新)
- 手把手带你搭建Mvp+Dagger架构
- Get IAT Table
- Visio自制直角箭头
- 2001年广西壮族自治区植被类型分布数据
- AI机器人AI源码营销机器人电销机器人智能电话机器人拨号机器人语音机器人空号识别FreeSWITCH呼叫中心中间ipbxIPBX科大识别阿里识别语音识别语音翻译
- brew install/update过程中download failed的问题及解决方法 2016年01月21日 10:29:23 strawman_dxj 阅读数:6013 标签: brew in
- 【autojs】Auto.js Pro陌陌点赞全脚本源代码
- 国外十几种国外撸美金项目适合小白们
- 基于verilog实现的VGA
- 第一节:基础概念介绍(黄老师)
- Python: 向量、矩阵和多维数组(基于NumPy库)
- 室内导航技术蓝牙aoa定位运用
热门文章
- 13 个超炫的 Conky 配置
- [转]用g++编译动态链接库
- vue使用webPack打包发布后页面显示空白
- configurablebeanfactory
- ES5 数组扩展方法 forEach/filter/map的使用与重写
- 【343天】每日项目总结系列081(2018.01.14)
- RPC 和 RESTful
- 如何在MVCsheet表单页面的后台取到页面自定义字段的值?
- 四十三 常用内建模块 base64
- .Net开发环境配置[OS/IIS/VS...]